python3_06_01.模块之os
- 2020 年 1 月 6 日
- 筆記
好车配好轮。
os.environ |
获取系统环境变量 |
|
---|---|---|
os.name |
字符串指示当前使用平台。win->'nt'; Linux->'posix' |
|
os.sep |
操作系统特定的路径分隔符,win下为"\",Linux下为"/" |
>>> os.getcwd() + os.sep + 'world.txt' |
'/tmp/world.txt' 目录字符串拼接很有用 |
||
os.linesep |
当前平台使用的行终止符,win下为"tn",Linux下为"n" |
|
os.system('top') |
运行shell命令,直接显示 |
|
os.getcwd() |
查看当前目录 |
|
切换目录 |
|
|
os.listdir() |
列出目录下所有内容 |
|
os.mkdir('test') |
新建单级目录test |
|
os.rmdir('test') |
删除目录test,目录不为空则报错 |
|
os.removedirs('ceshi/test') |
递归删除目录,ceshi也会被删除,不为空报错 |
|
os.makedirs('ceshi/test') |
新建多层递归目录 |
|
os.remove('test.txt') |
删除文件 |
|
os.rename('hello.txt','world.txt') |
重命名文件/目录,前为旧后为新 |
|
os.stat('/tmp/world.txt') |
获取文件目录信息 |
|
os.access('/tmp/world.txt',os.F_OK) |
os.access(path, mode);检测权限 |
os.F_OK: 作为access()的mode参数,测试path是否存在。 |
os.R_OK: 包含在access()的mode参数中 , 测试path是否可读。 |
||
os.W_OK 包含在access()的mode参数中 , 测试path是否可写。 |
||
os.X_OK 包含在access()的mode参数中 ,测试path是否可执行。 |
||
os.chmod() |
用于更改文件或目录的权限。 |
http://www.runoob.com/python/os-chmod.html |
os.chown(path, uid, gid); |
用于更改文件所有者,如果不修改可以设置为 -1 |
|
os.chroot() |
更改当前进程的根目录为指定的目录,使用该函数需要管理员权限。 |
|
os.path.abspath("world.txt") |
返回绝对路径 |
返回结果: '/tmp/world.txt' |
os.path.basename("/tmp/world.txt") |
返回文件名 |
返回结果: 'world.txt' |
os.path.isabs("world.txt") |
如果是绝对路径,返回True |
返回结果: False |
os.path.isdir("/usr") |
如果path是一个存在的目录,则返回True。否则返回False |
返回结果: True |
os.path.isfile("world.txt") |
如果path是一个存在的文件,返回True。否则返回False |
返回结果: True |
os.path.split("/var/log/messages") |
把路径分割为文件名 和 目录名 |
返回结果 : ('/var/log', 'messages') |
os.path.dirname("/var/log/messages") |
获取文件的上级目录 |
返回结果: '/var/log' |
os.path.join(path1[, path2[, …]]) |
将多个路径组合后返回,第一个绝对路径之前的参数将被忽略,这个必会,日后用途非常广泛! |
请看下面实例 |
#linux下查找文件def find_file(name,start='/'):for relpath,dirs,files in os.walk(start): if name in files: full_path = os.path.join(start,relpath,name) file_path = os.path.normpath(os.path.abspath(full_path)) return file_path |