在python编程中,我们会经常使用到文件和目录,这些操作python提供一个os模块,里面有很多操作文件和目录的函数.
下面介绍os的常用功能
1.获取当前路径
>>> os.getcwd()'/root/python'2.获取目录中的内容
>>> os.listdir(os.getcwd())['deco.py', '6.py', 'inputfile.py', 'uniFile.py', 'oddnogen.py', 'ospathex.py', 'operate.py', 'bianliang.py', 'typecheck1.py']3.创建目录
>>> os.mkdir('/root/pythontest')
一次性创建嵌套目录可使用os.makedirs,makedirs可以生成多层递归目录,removedirs可以删除多层递归的空目录,若目录中有文件则无法删除;os.system():运行shell命令;
>>> os.environ['HOME']'/root'>>> os.makedirs(os.path.join(os.environ['HOME'],'test','py'))>>> os.system('ls -lR /root/test')/root/test:total 4drwxr-xr-x 2 root root 4096 2013-03-29 17:27 py/root/test/py:total 00
4.改变工作目录
>>> os.getcwd()'/root/python'>>> os.chdir('/etc')>>> os.getcwd()'/etc'
5.删除目录
>>> os.rmdir('/root/pythontest')>>>
注:删除目录必须是空目录
6.删除文件
>>> os.remove('/root/pytest.py')
7.重命名文件或者目录
>>> os.rename('/root/pytest.py','/root/test.py')8.字符串给出当前平台使用的终止符,例如:Windows使用’\r\n’,Linux使用’\n’
>>> os.linesep'\n'
以下是os.path模块
9.判断是否是目录
>>> os.path.isdir('/root/python')True
10.判断是否为文件
>>> os.path.isfile('/root/python')False
11.返回一个路径的目录名和文件名
>>> os.path.split(os.getcwd())('/root', 'python')12.判断是否存在文件或目录name
>>> os.path.exists('/root')True>>> os.path.exists('/root/1.py')False13.获得文件大小
>>> os.path.getsize('/root/python/if.py')28214.返回文件路径,返回文件名
>>> os.path.dirname('/root/python/if.py')'/root/python'>>> os.path.basename('/root/python/if.py')'if.py'15.连接目录与文件名或目录
>>> os.path.join('/dave/test/','1.py')'/dave/test/1.py'
判断一个目录里哪些是文件哪些是目录.
>>> for file in os.listdir('/root/python'):... if os.path.isdir(file):... print file,"is a directory"... else:... print file,"is a file"... deco.py is a fileinputfile.py is a fileoperate.py is a filehello.pyc is a fileuserpw.py is a file4.py is a fileanswer is a directory