python模块os

时间:2021-09-02 11:35:47

一、os模块概述

Python os模块包含普遍的操作系统功能。如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的。(一语中的)

二、常用方法

1、os.name

输出字符串指示正在使用的平台。如果是window 则用'nt'表示,对于Linux/Unix用户,它是'posix'。

2、os.getcwd()

函数得到当前工作目录,即当前Python脚本工作的目录路径。

#!/bin/env python
#-*- encoding=utf8 -*-
import os if __name__=="__main__":
# 函数得到当前工作目录,即当前Python脚本工作的目录路径。
print os.getcwd() 执行命令: D:\python_test>python test_path.py
输出结果: D:\python_test 执行命令: D:\>python ./python_test/test_path.py
输出结果: D:

3、os.listdir()

返回指定目录下的所有文件和目录名。

#!/bin/env python
#-*- encoding=utf8 -*-
import os if __name__=="__main__":
# 函数得到当前工作目录,即当前Python脚本工作的目录路径。
cwd = os.getcwd() # 返回指定目录下的所有文件和目录名。
print os.listdir(cwd)

4、os.remove()

删除一个文件。

5、os.system()

运行shell命令。

os.system("cmd")  # 启动dos窗口

6、os.sep 可以取代操作系统特定的路径分割符。

7、os.linesep字符串给出当前平台使用的行终止符

>>> import os
>>> os.sep
'\\'
>>> os.linesep
'\r\n'
>>>

8、os.path.split()

函数返回一个路径的目录名和文件名

>>> os.path.split('C:\\Python25\\abc.txt')
('C:\\Python25', 'abc.txt')

9、os.path.isfile()和os.path.isdir()函数分别检验给出的路径是一个文件还是目录。

>>> os.path.isdir(os.getcwd())
True
>>> os.path.isfile('a.txt')
False
>>> os.path.isfile('D:/python_test/test_path.py')
True

10、os.path.exists()函数用来检验给出的路径是否真地存在

>>> os.path.exists('C:\\Python25\\abc.txt')
False
>>> os.path.exists('C:\\Python25')
True
>>>

11、os.path.abspath(name):获得绝对路径

12、os.path.normpath(path):规范path字符串形式

13、os.path.getsize(name):获得文件大小,如果name是目录返回0L

14、os.path.splitext():分离文件名与扩展名

>>> os.path.splitext('a.txt')
('a', '.txt')

15、os.path.join(path,name):连接目录与文件名或目录

>>> os.path.join('c:\\Python','a.txt')
'c:\\Python\\a.txt'
>>> os.path.join('c:\\Python','f1')
'c:\\Python\\f1'
>>>

16、os.path.basename(path):返回文件名

>>> os.path.basename('a.txt')
'a.txt'
>>> os.path.basename('c:\\Python\\a.txt')
'a.txt'
>>>

17、os.path.dirname(path):返回文件路径

>>> os.path.dirname('c:\\Python\\a.txt')
'c:\\Python'

18、os.chdir('c:\\Python\\a.txt')改变当前路径

os.chdir('D:\Program Files')

19、os.path.dirname(os.path.realpath(__file__))获取当前的__file__的路径

__file__是执行的文件

#!/bin/env python
#-*- encoding=utf8 -*- import os if __name__=="__main__": print __file__ print os.path.realpath(__file__) print os.path.dirname(os.path.realpath(__file__)) 输出结果:
D:\python_test>python test_path.py
test_path.py
D:\python_test\test_path.py
D:\python_test