python中常用的文件和目录操作(二)
一. os模块概述
python os模块提供了非常丰富的方法用来处理文件和目录
二. 导入os模块:
import os
三. 常用方法
1. os.name 输出字符串表示正在使用的平台,如果是windows则用"nt"表示,如果是Linux/Unix,是"posix"
import os print(os.name) 结果: nt
2. os.getcwd() 得到当前的工作目录,即当前python脚本工作的目录路径
import os print(os.getcwd()) 结果: D:\python_workshop\python6\study
3. os.listdir(path) 以列表的形式返回指定目录下的所有文件和目录名
import os dirs = os.listdir(r"D:\python_workshop\python6") print(dirs) for file in dirs: print(file) 结果: ['.idea', 'alice.txt', 'homeworks', 'lessons', 'personal_practices', 'study', 'url.txt'] .idea alice.txt homeworks lessons personal_practices study url.txt
4. os.mkdir(path, [mode]) 创建一个目录,默认mode是0777
import os path = "./test" os.mkdir(path, 0o755) print("目录已创建") 结果: 目录已创建
5. os.makedirs(path) 创建一系列目录,递归的创建
import os path = "./test/android_app/auto_test" os.makedirs(path, 0o755) print("递归目录已创建") 结果: 递归目录已创建
6. os.remove() 删除一个文件
import os path = "../" print("移除前的目录文件为:", os.listdir(path)) os.remove("../math.txt") print("移除后的目录文件为: ", os.listdir(path)) 结果: 移除前的目录文件为: ['.idea', 'alice.txt', 'homeworks', 'lessons', 'math.txt', 'personal_practices', 'study', 'url.txt'] 移除后的目录文件为: ['.idea', 'alice.txt', 'homeworks', 'lessons', 'personal_practices', 'study', 'url.txt']
7. os.rmdir() 删除空目录,目录非空时删除会报错OSError
import os path = "../" print("删除前的目录文件为: ", os.listdir(path)) os.rmdir("../test") print("删除后的目录文件为: ", os.listdir(path)) 结果: 删除前的目录文件为: ['.idea', 'alice.txt', 'homeworks', 'lessons', 'personal_practices', 'study', 'test', 'url.txt'] 删除后的目录文件为: ['.idea', 'alice.txt', 'homeworks', 'lessons', 'personal_practices', 'study', 'url.txt']
注意:递归的删除目录可用shutil.rmtree(path),但必须先import shutil
8. os.environ.get("path") 获取环境变量值
import os print(os.environ.get("path")) 结果: C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\OpenCL SDK\3.0\bin\x86;C:\Program Files (x86)\Intel\OpenCL SDK\3.0\bin\x64;D:\Program\python34;D:\Program\python34\Scripts;D:\Program\python34\Lib;D:\Program\python34\PyInstaller-3.3.1;D:\Program\python34\lib\site-packages\pywin32_system32
9. os.system(command) 运行系统命令
import os os.system('echo "hello world!"') 结果: "hello world!"
四. os模块path方法
1. os.path.join(path, name) 连接目录与文件名或目录
import os path = "D:\\python_workshop" name = "hello_world" #可以是不存在的目录或文件名 print(os.path.join(path, name)) 结果: D:\python_workshop\hello_world
2. os.path.isfile(path)和os.path.isdir(path)函数分别检验给出的路径是一个文件还是目录,存在返回True,否则为False
import os path = "./url.txt" print(os.path.isfile(path)) path = "../python6" print(os.path.isdir(path)) 结果: False False
3. os.path.exists(path) 用来检验给出的路径是否真的存在,存在返回True,否则为False
import os path = "../test" print(os.path.exists(path)) 结果: True
4. os.path.split(path) 返回一个路径的目录名和文件名(可以是目录可以是文件,如果最后一个是目录,则为目录名)
import os path = r"D:\python_workshop" print(os.path.split(path)) 结果: ('D:\\', 'python_workshop')
5. os.path.splitext(path)分离文件名与扩展名(路径不是真实存在的也行)
import os path = r"D:\python_workshop\python6\lesson1.py" print(os.path.splitext(path)) 结果: ('D:\\python_workshop\\python6\\lesson1', '.py')
6. os.path.dirname(path) 返回文件路径(注意不是文件的完整路径)
import os path = r"D:\python_workshop\python6" print(os.path.dirname(path)) 结果: D:\python_workshop
7. os.path.basename(path) 返回最后的文件名
import os path = r"D:\python_workshop\python6" print(os.path.basename(path)) 结果: python6
8. os.path.getsize(name) 获得文件大小,如果name是目录返回OL
import os name = r"D:\python_workshop\1.txt" print(os.path.getsize(name)) name = r"D:\python_workshop" print(os.path.getsize(name)) 结果: 197 4096
python中常用的文件和目录操作(二)的更多相关文章
- python中常用的文件和目录操作(一)
常用的文件操作 1. 打开文件 open,它是一个内置函数,可以直接调用 语法:file object = open(file_name, [access_mode]),这里我们会创建一个file对象 ...
- 第9.11节 Python中IO模块文件打开读写操作实例
为了对前面学习的内容进行一个系统化的应用,老猿写了一个程序来进行文件相关操作功能的测试. 一. 测试程序说明 该程序允许测试人员选择一个文件,自己输入文件打开模式.写入文件的位置以及写入内容,程序按照 ...
- Python中的文件和目录操作实现
Python中的文件和目录操作实现 对于文件和目录的处理,虽然可以通过操作系统命令来完成,但是Python语言为了便于开发人员以编程的方式处理相关工作,提供了许多处理文件和目录的内置函数.重要的是,这 ...
- Python::OS 模块 -- 文件和目录操作
os模块的简介参看 Python::OS 模块 -- 简介 os模块的进程管理 Python::OS 模块 -- 进程管理 os模块的进程参数 Python::OS 模块 -- 进程参数 os模块中包 ...
- Python之文件与目录操作及压缩模块(os、shutil、zipfile、tarfile)
Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称 功能描述 open()函数 文件读取或写入 os.path模块 文件路径操作 os模块 文件和目录简单操作 zipfile模 ...
- 【转】python 历险记(四)— python 中常用的 json 操作
[转]python 历险记(四)— python 中常用的 json 操作 目录 引言 基础知识 什么是 JSON? JSON 的语法 JSON 对象有哪些特点? JSON 数组有哪些特点? 什么是编 ...
- 【转】Python之文件与目录操作(os、zipfile、tarfile、shutil)
[转]Python之文件与目录操作(os.zipfile.tarfile.shutil) Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称 功能描述 open()函数 文件读 ...
- Python之文件与目录操作(os、zipfile、tarfile、shutil)
Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称 功能描述 open()函数 文件读取或写入 os.path模块 文件路径操作 os模块 文件和目录简单操作 zipfile模 ...
- python文件及目录操作
python文件及目录操作 读/写文件 新建/打开文件 写入 #举个例子,打开D:\test\data.txt #以写入模式打开文件 #如果test(上级目录)不存在则报错 #如果data.txt(文 ...
随机推荐
- 使用jquery的ajax方法获取下拉列表值
AJAX 是一种用于创建快速动态网页的技术. 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新,用户体验非常好. ...
- JavaWeb 过滤器应用之页面静态化
页面静态化是把servlet请求的资源所做输出保存到html中, 然后重定向到 html 页面, 二次访问时,这个html已经存在,那么直接重定向,不用再去访问servlet! // StaticFi ...
- 我的Java开发学习之旅------>二进制、八进制、十进制、十六进制之间转换
一. 十进制与二进制之间的转换 (1) 十进制转换为二进制,分为整数部分和小数部分 ① 整数部分 方法:除2取余法,即每次将整数部分除以2,余数为该位权上的数,而商继续除以2,余数又为上一个位权 ...
- hive批量执行sql命令及使用小技巧
root@hadoop-senior hive-0.13.1]$ bin/hive -helpusage: hive -d, --define <key=value> Variable s ...
- ./bin/console server:run Surprise! There are no commands defined in the "server" namespace.
Let's start the built-in web server: ./bin/console server:run Surprise! There are no commands defi ...
- ACM解题之(ZOJ 1094) Matrix Chain Multiplication
题目来源: 点击打开链接 题目翻译: 矩阵乘法问题是动态规划的典型例子. 假设你必须评估一个表达式,如A * B * C * D * E,其中A,B,C,D和E是矩阵.由于矩阵乘法是关联的,乘法运算的 ...
- func && operation_yes || operation_no (Shell)
通过&&, || 理解shell中的函数返回值. 我想实现如下功能: 写一个函数判断一个字符串中是否只包含数字,并返回相应的标志(是/否); 通过调用上面的函数,判断给定的字符串是否只 ...
- google guava libraries
google/guava Guava项目包含一些在我们自己的项目中可以依赖的Google核心库.也就是Google开源的核心库,可以由其他项目利用. 其中包括: 集合 缓存 原语的支持(primiti ...
- 【转】ModelAndView 学习
http://blog.csdn.net/wavaya/article/details/6185226 ModelAndView 类别就如其名称所示,是代表了Spring Web MVC程式中呈现画面 ...
- staticmethod
python staticmethod 返回函数的静态方法. 该方法不强制要求传递参数,如下声明一个静态方法: class C(object): @staticmethod def f(arg1, a ...