我的Python成长之路---第六天---Python基础(18)---2016年2月20日(晴)

时间:2021-10-12 17:28:52

os模块

提供对操作系统进行调用的接口

>>> import os
>>> os.getcwd() # 获取当前工作目录,类似linux的pwd命令
'/data/python/day5'
>>> os.chdir('..') # 进入某个目录,类似linux的cd命令
>>> os.getcwd()
'/data/python'
>>> os.curdir # 获取当前目录
'.'
>>> os.pardir # 获取当前目录的父目录
'..'
>>> os.chdir('day5')
>>> os.getcwd()
'/data/python/day5'
>>> os.makedirs('testdir1/testdir2') # 递归创建目录相当于 mkdir -p命令
>>> os.makedirs('test_dir1/test_dir2') # 递归创建目录相当于 mkdir -p命令
>>> os.listdir('.') # 显示目录下多所有文件 相当于linux的ls -a
['test_dir1']
>>> os.removedirs('test_dir1/test_dir2') # 删除多级(递归)目录,注意目录必须是空的,若目录为空删除,并递归到上以及目录,如果也为空则也删除
>>> os.mkdir('test2') # 创建目录,相当于mkdir
>>> os.rmdir('test2') # 删除目录,相当于rm >>> f = open('test.txt', 'w')
>>> f.write('testline')
8
>>> f.close()
>>> os.listdir()
['testdir2', 'test.txt', 'testdir1']
>>> os.rename('test.txt', 'new_test.txt') #重命名
>>> os.stat('.') # 显示目录或文件的状态,包括权限等
os.stat_result(st_mode=16877, st_ino=786731, st_dev=64784, st_nlink=4, st_uid=0, st_gid=0, st_size=4096, st_atime=1455695375, st_mtime=1455696066, st_ctime=1455696066)
>>> os.sep # 获取文件分割符,linux为/,windows为\\
'/'
>>> os.name # 返回平台名,linux为posix,win为nt
'posix'
>>> os.linesep # 返回系统换行符,win下为\r\n
'\n'
>>> os.pathsep # 返回用于分割文件路径的字符串,vin下为;
':'
>>> os.system('ls') # 执行shell命令
testdir1 testdir2
0
>>> os.environ # 获取系统环境变量
environ({'USER': 'root', 'PATH': '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'SHELL': '/bin/bash', 'HOME': '/root', 'SHLVL': '1', 'HISTTIMEFORMAT': '%
...省略n多好...
>>> os.path.abspath('.') # 返回目录的绝对路径
'/data/python/day5'
>>> os.path.split('/data/python/day5') # 将path分割成目录和文件,元祖返回
('/data/python', 'day5')
>>> os.path.dirname('/data/python/day5') # 返回path也即是split的第一个元素
'/data/python'
>>> os.path.basename('/data/python/day5') # 返回文件名也即是split的第一个元素
'day5'
>>> os.path.exists('/data/python/day5') # 判断目录或文件是否存在
True
>>> os.path.isabs('/data/python/day5') # 判断是否是绝对目录,不考虑是否存在,说白了就是字符串符合绝对路径的规范就返回True
True
>>> os.path.isabs('day5')
False
>>> os.path.isabs('/data/python/day6') #
True
>>> os.path.isfile('/data/python/day5') # 判断是否是文件
False
>>> os.path.isdir('/data/python/day5') # 判断是否是目录
True
>>> os.path.isdir('/data/python/day6')
False
>>> os.path.join('/data/python/day6', 'test') # 组合目录
'/data/python/day6/test'
>>> os.path.getatime('/data/python/day5') # 返回文件或目录的最后访问时间
1455695375.9394312
>>> os.path.getmtime('/data/python/day5') # 返回文件或目录的最后修改时间
1455696066.0034554
>>> os.path.getctime('/data/python/day5') # 返回文件或目录的创建时间
1455696066.0034554