import os
1、# a=os.path.abspath(__file__) #__file__是当前文件名,os.path.abspath,表示:当前文件的绝对路径
# print(a)#打印结果为:E:\pythonS5\june\628模块与包的调用\模块整理.py
2、# a=os.path.dirname(os.path.abspath(__file__)) #返回__file__文件绝对路径的上一次目录路径
# print(a)#打印结果为:E:\pythonS5\june\628模块与包的调用
3、a=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
print(a) #还可以这么做,打印为:E:\pythonS5\june
4、a=os.getcwd() #获取当前工作路径,即当前文件工作的目录路径
print(a) ##打印结果为:E:\pythonS5\june\模块整理
5、 os.chdir(r‘E:\pythonS5\june\630月考1‘)
print(os.getcwd()) #打印结果为:E:\pythonS5\june\630月考1,因是更改了目录, 所以要用os.getcwd来查看修改后的目录
从当前各种模块,更改目录到630月考1里面,如下图
6、a=os.path.split(‘E:\pythonS5\june\模块整理\各种模块.py‘)
print(a) #打印结果为:(‘E:\\pythonS5\\june\\模块整理‘, ‘各种模块.py‘)
7、a=os.path.dirname(‘E:\pythonS5\june\模块整理\各种模块.py‘)
print(a) #打印结果为:E:\pythonS5\june\模块整理
8、a=os.path.basename(‘E:\pythonS5\june\模块整理\各种模块.py‘)
print(a) #打印结果为:各种模块.py
9、os.path.commonprefix(list) 返回list中,所有path共有的最长的路径。
a=os.path.commonpath([‘E:\pythonS5\june\模块整理\各种模块.py‘,‘E:\pythonS5\june‘])
print(a) #打印结果为:E:\pythonS5\june,,##说白了就是找共有部分。
也可看这个例子:
如:
>>> os.path.commonprefix([‘/home/td‘,‘/home/td/ff‘,‘/home/td/fff‘])
‘/home/td‘
10、os.path.exists(path)
如果path存在,返回True;如果path不存在,返回False。
a=os.path.exists(‘E:\pythonS5\june\模块整理\各种模块.py‘)
print(a) #打印结果为:True
a1=os.path.exists(‘E:\pythonS5\june\模块整理\123各种模块.py‘)
print(a1) #打印结果为:False
12、os.path.isabs(path)
如果path是绝对路径,返回True。
a=os.path.isfile(‘E:\pythonS5\june\模块整理\各种模块.py‘)
print(a) #打印结果为:True
a=os.path.isfile(‘june\模块整理\各种模块.py‘)
print(a) #打印结果为:False
13、os.path.isfile(path)
如果path是一个存在的文件,返回True。否则返回False。
a=os.path.isfile(‘E:\pythonS5\june\模块整理\各种模块.py‘)
print(a) #打印结果为:True
a1=os.path.isfile(‘E:\pythonS5\june\模块整理‘)
print(a1) #打印结果为:False
14、os.path.isdir(path)
如果path是一个存在的目录,则返回True。否则返回False。
a=os.path.isdir(‘E:\pythonS5\june\模块整理\各种模块.py‘)
print(a) #打印结果为:False
a1=os.path.isdir(‘E:\pythonS5\june\模块整理‘)
print(a1) #打印结果为:True
15、os.path.join(path,paths)
a=os.path.join(‘E:\pythonS5\june\628模块与包的调用‘,‘629面向对象‘)
print(a) #打印结果为:E:\pythonS5\june28模块与包的调用\629面向对象
a1=os.path.join(‘E:\pythonS5\june\628模块与包的调用‘,‘E:\pythonS5\July\0703继承、派生、组合、接口‘)
print(a1) #打印结果为:E:\pythonS5\July83继承、派生、组合、接口
#也就是说,若都有绝对路径,会后面参数的路径会覆盖掉之前的路径,看a1;
#若前面有绝对路径,后面没有绝对路径,则会将两者拼凑在一起
16、os.path.normcase(path)
在Linux和Mac平台上,该函数会原样返回path,在windows平台上会将路径中所有字符转换为小写,并将所有斜杠转换为饭斜杠。
a=os.path.normcase(‘E:\pythonS5\june\模块整理\各种模块.py‘)
print(a) #打印结果为:e:\pythons5\june\模块整理\各种模块.py
17、os.path.normpath(path)
规范化路径。
18、os.path.splitdrive(path)
返回(drivername,fpath)元组
a=os.path.splitext(‘E:\pythonS5\june\模块整理/各种模块.py‘)
print(a) #打印结果为:(‘E:\\pythonS5\\june\\模块整理/各种模块‘, ‘.py‘)
19、os.path.splitext(path)
分离文件名与扩展名;默认返回(fname,fextension)元组,可做分片操作
a=os.path.splitext(‘E:\pythonS5\june\模块整理\各种模块.py‘)
print(a) #打印结果为:(‘E:\\pythonS5\\june\\模块整理\\各种模块‘, ‘.py‘)
20、os.path.getsize(path)
返回path的文件的大小(字节)。
a=os.path.getsize(‘E:\pythonS5\june\模块整理\各种模块.py‘)
print(a) #打印结果为:4142
21、os.path.getatime(path) 返回path所指向的文件或者目录的最后访问时间
22、os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间
23、os.path.getctime() 返回创建时间
print(os.curdir) #打印结果为:. 返回当前目录: (‘.‘)
print(os.pardir) ##打印结果为:.. 获取当前目录的父目录字符串名:(‘..‘)
24、os.makedirs(‘dirname1/dirname2‘) 可生成多层递归目录
# a=os.makedirs(‘1各种模块.py‘)
# print(a) 新建1各种模块.py
25、os.removedirs(‘dirname1‘) 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
a=os.removedirs(‘1各种模块.py‘)
print(a) #删除1各种模块.py
26、# os.mkdir(‘123‘) #新建目录,名为123
27、# os.rmdir(‘123‘) #删除123这个目录
28、os.listdir(‘dirname‘) 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
29、os.remove() 删除一个文件
则删除这个文件
30、os.rename("oldname","newname") 重命名文件/目录
31、os.stat(‘path/filename‘) 获取文件/目录信息
a=os.stat(‘E:\pythonS5\june\模块整理‘)
print(a) #打印结果为:os.stat_result(st_mode=16895, st_ino=24488322973834837, st_dev=319315, st_nlink=1, st_uid=0, st_gid=0, st_size=0, st_atime=1500095743, st_mtime=1500095743, st_ctime=1500022177)
32、os.path.splitext
a2=os.path.splitext(‘E:\pythonS5\june\模块整理\各种模块.py‘)
print(a2) #分隔文件 #打印结果为:(‘E:\\pythonS5\\june\\模块整理\\各种模块‘, ‘.py‘)
33、os.environ 获取系统环境变量
print(os.environ)
34、os.system("bash command") 运行shell命令,直接显示 ,请参考http://www.cnblogs.com/ccorz/p/5594194.html
35、os.name 输出字符串指示当前使用平台。win->‘nt‘; Linux->‘posix‘
a=os.name
print(a) #打印结果为:nt
36、os.pathsep 输出用于分割文件路径的字符串 win下为;,Linux下为:
a=os.pathsep
print(a) #打印结果为:;