Python的os模块提供了系统相关,目录,文件操作,执行命令等操作。
1.1文件和目录操作相关的方法
方法 | 说明 |
os.mkdir | 创建目录 |
os.rmdir | 删除目录 |
os.rename | 重命名 |
os.remove | 删除文件 |
os.getcwd | 获取当前所在目录 |
os.walk | 遍历目录 |
os.path.join | 连接目录和文件名 |
os.path.split | 分割文件名和目录 |
os.path.abspath | 获取绝对路径 |
os.path.dirname | 获取路径 |
os.path.basename | 获取文件名或者文件夹名 |
os.path.splitext | 分离文件名和扩展名 |
os.path.isfile | 判断路径是否为一个文件 |
os.path.isdir | 判断路径是否为一个目录 |
1.os.path.abspath:获取文件或者目录的绝对路径
In [1]: import os In [2]: os.path.abspath('demo.txt') Out[2]: 'E:\test\sys\demo.txt' In [1]: import os In [2]: os.path.abspath('sys') Out[2]: 'E:\test\sys\sys' In [3]: os.path.abspath('.') Out[3]: 'E:\test\sys'
2.os.path.dirname:获取文件或者目录的路径
In [5]: os.path.dirname('E:\test\sys\demo.txt') Out[5]: 'E:\test\sys' In [6]: os.path.dirname('E:\test\sys\') Out[6]: 'E:\test\sys'
3.os.path.basename:获取文件名或者文件夹名
In [7]: os.path.basename('E:\test\sys\demo.txt') Out[7]: 'demo.txt' In [8]: os.path.basename('E:\test\sys') Out[8]: 'sys'
4.os.path.splitext:分离文件名和扩展名
In [1]: import os In [2]: os.path.splitext('E:\text\sys\demo.txt') Out[2]: ('E:\text\sys\demo', '.txt') In [4]: os.path.splitext('E:\text\sys\') Out[4]: ('E:\text\sys\', '') In [5]: os.path.splitext('E:\text\sys') Out[5]: ('E:\text\sys', '')
5.os.path.isfile:是否为文件
In [1]: import os In [2]: os.path.isfile('E:\test\sys\demo.txt') Out[2]: True In [3]: os.path.isfile('E:\test\sys\') Out[3]: False
6.os.path.isdir:是否为目录
In [1]: import os In [2]: os.path.isdir('E:\test\sys\') Out[2]: True In [3]: os.path.isdir('E:\test\sys\demo.txt') Out[3]: False
7.os.walk:遍历目录
返回3个元素的元组,dirpath是以字符串形式返回该目录下的所有绝对路径,dirnames是以列表的形式返回每个绝对路径下的文件夹名字,filenames是以列表形式返回该路径下的文件名字。
In [1]: import os In [2]: for dirpath,dirnames,filenames in os.walk('E:\test'): ...: print(dirpath) ...: print(dirnames) ...: print(filenames) ...: E: est ['lib', 'sys'] [] E: estlib [] [] E: estsys [] ['demo.txt']
1.2系统相关的方法
方法/变量 | 说明 |
os.name | 查看当前操作系统的名称 |
os.environ | 获取当前系统的环境变量 |
os.sep | 获取当前平台的分隔符 |
os.extsep | 获取文件名和文件扩展名之间的分割符号 |
os.pathsep | 获取path环境变量之间的分隔符 |
os.linesep | 获取行结束符 |
示例:
1 In [1]: import os 2 3 In [2]: os.name 4 Out[2]: 'nt' 5 6 In [3]: os.environ 7 Out[3]: 8 environ{'ALLUSERSPROFILE': 'C:\ProgramData', 9 'WORKON_HOME': 'E:\test'} 10 11 In [4]: os.sep 12 Out[4]: '\' 13 14 In [5]: os.extsep 15 Out[5]: '.' 16 17 In [6]: os.pathsep 18 Out[6]: ';' 19 20 In [7]: os.linesep 21 Out[7]: ' ' 22 23 In [8]: