OS模块的操作如下:
1 os.getcwd() #获取当前工作目录,即当前python脚本工作的目录路径
2 os.chdir("dirname") #改变当前脚本工作目录;相当于shell下cd
3 os.curdir #返回当前目录: ('.')
4 os.pardir #获取当前目录的父目录字符串名:('..')
5 os.makedirs('dirname1/dirname2') #可生成多层递归目录
6 os.removedirs('dirname1') # 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
7 os.mkdir('dirname') # 生成单级目录;相当于shell中mkdir dirname
8 os.rmdir('dirname') #删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
9 os.listdir('dirname') #列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
10 os.remove() # 删除一个文件
11 os.rename("oldname","newname") # 重命名文件/目录
12 os.stat('path/filename') # 获取文件/目录信息
13 os.sep #输出操作系统特定的路径分隔符,win下为"\\",Linux下为"/"
14 os.linesep #输出当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"
15 os.pathsep #输出用于分割文件路径的字符串
16 os.name #输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
17 os.system("bash command") #运行shell命令,直接显示
18 os.environ #获取系统环境变量
19 os.path.abspath(path) #返回path规范化的绝对路径
20 os.path.split(path) #将path分割成目录和文件名二元组返回
21 os.path.splitext() # 分离文件名和扩展名
22 os.path.dirname(path) # 返回path的目录。其实就是os.path.split(path)的第一个元素
23 os.path.basename(path) # 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素
24 os.path.exists(path) #如果path存在,返回True;如果path不存在,返回False
25 os.path.isabs(path) #如果path是绝对路径,返回True
26 os.path.isfile(path) #如果path是一个存在的文件,返回True。否则返回False
27 os.path.isdir(path) #如果path是一个存在的目录,则返回True。否则返回False
28 os.path.join(path1[, path2[, ...]]) # 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
29 os.path.getatime(path) #返回path所指向的文件或者目录的最后存取时间
30 os.path.getmtime(path) #返回path所指向的文件或者目录的最后修改时间
31 os.exit() # 退出当前进程
32 os.path.getsize(filename) # 返回文件或文件夹大小,与os.stat(filename).st_size
具体操作如下:
1 >>> os.getcwd() # 查看当前目录
2 'C:\\Python36'
3 >>> os.chdir("Lib") # 换路径
4 >>> os.getcwd() # 换路径成功
5 'C:\\Python36\\Lib'
6 >>> os.curdir
7 '.'
8 >>> os.pardir
9 '..'
10 >>> os.chdir('..') # 返回
11 >>> os.getcwd()
12 'C:\\Python36'
13 >>> os.makedirs("test1/test2") # 创建文件夹,可创建多层递归目录
14 >>> os.chdir("test1/test2")
15 >>> os.getcwd() # 创建成功
16 'C:\\Python36\\test1\\test2'
17 >>> os.chdir('..') # 返回
18 >>> os.getcwd()
19 'C:\\Python36\\test1'
20 >>> os.removedirs('test2') # 删除文件夹
21 >>> os.chdir('test2') # 已成功删除
22 Traceback (most recent call last):
23 File "<pyshell#16>", line 1, in <module>
24 os.chdir('test2')
25 FileNotFoundError: [WinError 2] 系统找不到指定的文件。: 'test2'
26 >>>os.mkdir('dirname') # 创建文件夹
27 >>> os.chdir('dirname')
28 >>> os.getcwd() # 创建成功
29 'C:\\Python36\\test1\\dirname'
30 >>> os.chdir('..')
31 >>> os.getcwd()
32 'C:\\Python36\\test1'
33 >>> os.rmdir('dirname') # 删除文件夹
34 >>> os.chdir('dirname')
35 Traceback (most recent call last):
36 File "<pyshell#23>", line 1, in <module>
37 os.chdir('dirname')
38 FileNotFoundError: [WinError 2] 系统找不到指定的文件。: 'dirname'
39
40 >>> os.listdir()
41 []
42 >>> os.chdir('..')
43 >>> os.listdir() # 列出本文件夹的文件夹或文件
44 ['a.txt', 'DLLs', 'Doc', 'include', 'Lib', 'libs', 'LICENSE.txt', 'NEWS.txt', 'python3.dll', 'python3.exe', 'python36.dll', 'pythonw.exe', 'qt.conf', 'README.txt', 'Scripts', 'selenium', 'tcl', 'test.bak', 'test.dat', 'test.dir', 'test1', 'Tools', 'vcruntime140.dll']
45 >>> os.chdir('test1')
46 >>> os.listdir()
47 ['test.txt', 'test1.txt']
48 >>> os.remove('test.txt') # 删除单个文件,注意是文件。
49 >>> os.listdir() # 删除成功
50 ['test1.txt']
51 >>> os.rename('test1.txt','test1_rename.txt') # 修改文件夹或文件的名字
52 >>> os.listdir()
53 ['test1_rename.txt']
54 >>> os.stat('test1_rename.txt') # 查看文件夹或文件的信息
55 os.stat_result(st_mode=33206, st_ino=6755399441094891, st_dev=1315649016, st_nlink=1, st_uid=0, st_gid=0, st_size=0, st_atime=1500994476, st_mtime=1500994476, st_ctime=1500994476)
56 >>> os.sep # 系统分隔符,windows是\\,linux是/
57 '\\'
58 >>> os.linesep #输出当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"
59 '\r\n'
60 >>> os.pathsep #输出用于分割文件路径的字符串
61 ';'
62 >>> os.name #输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
63 'nt'
64 >>> os.system("bash command") #运行shell命令,直接显示
65 1
66 >>> os.environ #获取系统环境变量
67 environ({'ALLUSERSPROFILE': 'C:\\ProgramData', 'APPDATA': 'C:\\Users\\fat39\\AppData\\Roaming', 'COMMONPROGRAMW6432': 'C:\\Program Files\\Common Files', 'COMPUTERNAME': 'FAT39-PC', 。。。略})
68 >>> os.path.abspath('test') #返回path规范化的绝对路径
69 'C:\\Python36\\test1\\test'
70 >>> os.path.split('test') #将path分割成目录和文件名二元组返回
71 ('', 'test')
72 >>> os.path.splitext('test1_rename.txt') # 分离文件名和扩展名
73 ('test1_rename', '.txt')
74 >>> os.path.dirname('test\\test\\test\\test1_rename.txt') # 返回path的目录。其实就是os.path.split(path)的第一个元素
75 'test\\test\\test'
76 >>> os.path.dirname(r'test\test\test\test1_rename.txt') # 返回path的目录。其实就是os.path.split(path)的第一个元素
77 'test\\test\\test'
78 >>> os.path.basename(r'test\test\test\test1_rename.txt') # 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素
79 'test1_rename.txt'
80 >>> os.path.exists(r'test\test\test\test1_rename.txt') #如果path存在,返回True;如果path不存在,返回False
81 False
82 >>> os.path.exists(r'test1_rename.txt') #如果path存在,返回True;如果path不存在,返回False
83 True
84 >>> os.path.isabs(r'test1_rename.txt') #如果path是绝对路径,返回True
85 False
86 >>> os.path.isfile(r'test\test\test\test1_rename.txt') #如果path是一个存在的文件,返回True。否则返回False
87 False
88 >>> os.path.isfile(r'test1_rename.txt') #如果path是一个存在的文件,返回True。否则返回False
89 True
90 >>> os.path.isdir('test2') #如果path是一个存在的目录,则返回True。否则返回False
91 True
92 >>> os.path.isdir('test1_rename.txt') #如果path是一个存在的目录,则返回True。否则返回False
93 False
94 >>> os.path.join('test1','test2') # 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
95 'test1\\test2'
96 >>> os.path.getatime('test1_rename.txt') #返回path所指向的文件或者目录的最后存取时间
97 1500994476.0000696
98 >>> os.path.getmtime('test1_rename.txt') #返回path所指向的文件或者目录的最后存取时间
99 1500994476.0000696
100 >>> os.path.getsize('test1_rename.txt') # 返回文件或文件夹大小,与os.stat(filename).st_size
101 0
102 >>> os.path.getsize('test2') # 返回文件或文件夹大小,与os.stat(filename).st_size
103 0