python使用os模块

By | 2017年2月27日
目录
[隐藏]

os模块
在python编程中,我们会经常使用到文件和目录,这些操作python提供一个os模块,里面有很多操作文件和目录的函数.

下面介绍os的常用功能

1.获取当前路径

1
2
>>> os.getcwd()
‘/root/python’

2.获取目录中的内容

1
2
>>> os.listdir(os.getcwd())
[‘deco.py’, ‘6.py’, ‘inputfile.py’, ‘uniFile.py’, ‘oddnogen.py’, ‘ospathex.py’, ‘operate.py’, ‘bianliang.py’, ‘typecheck1.py’]

3.创建目录

1
>>> os.mkdir(‘/root/pythontest’)

一次性创建嵌套目录可使用os.makedirs,makedirs可以生成多层递归目录,removedirs可以删除多层递归的空目录,若目录中有文件则无法删除;os.system():运行shell命令;

1
2
3
4
5
6
7
8
9
10
11
>>> os.environ[‘HOME’]
‘/root’
>>> os.makedirs(os.path.join(os.environ[‘HOME’],’test’,’py’))
>>> os.system(‘ls -lR /root/test’)
/root/test:
total 4
drwxr-xr-x 2 root root 4096 2013-03-29 17:27 py
/root/test/py:
total 0
0

4.改变工作目录

1
2
3
4
5
>>> os.getcwd()
‘/root/python’
>>> os.chdir(‘/etc’)
>>> os.getcwd()
‘/etc’

5.删除目录

1
2
>>> os.rmdir(‘/root/pythontest’)
>>>

注:删除目录必须是空目录

6.删除文件

1
>>> os.remove(‘/root/pytest.py’)

7.重命名文件或者目录

1
>>> os.rename(‘/root/pytest.py’,’/root/test.py’)

8.字符串给出当前平台使用的终止符,例如:Windows使用’\r\n’,Linux使用’\n’

1
2
>>> os.linesep
‘\n’

以下是os.path模块

9.判断是否是目录

1
2
>>> os.path.isdir(‘/root/python’)
True

10.判断是否为文件

1
2
>>> os.path.isfile(‘/root/python’)
False

11.返回一个路径的目录名和文件名

1
2
>>> os.path.split(os.getcwd())
(‘/root’, ‘python’)

12.判断是否存在文件或目录name

1
2
3
4
>>> os.path.exists(‘/root’)
True
>>> os.path.exists(‘/root/1.py’)
False

13.获得文件大小

1
2
>>> os.path.getsize(‘/root/python/if.py’)
282

14.返回文件路径,返回文件名

1
2
3
4
>>> os.path.dirname(‘/root/python/if.py’)
‘/root/python’
>>> os.path.basename(‘/root/python/if.py’)
‘if.py’

15.连接目录与文件名或目录

1
2
>>> os.path.join(‘/dave/test/’,’1.py’)
‘/dave/test/1.py’

16.判断一个目录里哪些是文件哪些是目录.

1
2
3
4
5
6
7
8
9
10
11
12
13
>>> 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 file
inputfile.py is a file
operate.py is a file
hello.pyc is a file
userpw.py is a file
4.py is a file
answer is a directory

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注