python编程时,经常和文件、目录打交道,这是就离不了os模块。os模块包含普遍的操作系统功能,与具体的平台无关。以下列举常用的命令
1. os.name()——判断现在正在实用的平台,Windows 返回 ‘nt'; Linux 返回’posix'
os.name -------------- 'nt'
2. os.getcwd()——得到当前工作的目录。
os.getcwd() 'C:\\Python27'
3. os.listdir()——指定所有目录下所有的文件和目录名。例:
os.listdir(".")#获取当前路径 ['DLLs', 'Doc', 'include', 'Lib', 'libs', 'LICENSE.txt', 'NEWS.txt', 'python.exe', 'pythonw.exe', 'README.txt', 'Scripts', 'tcl', 'Tools', 'w9xpopen.exe'] os.listdir("E:\\appium scripts")#获取制定路径 ['.idea', 'android_desktop.py', 'android_desktop.pyc', 'CalculatorAppium.py', 'ContactManager.apk', 'ContactManager_android_contacts.py', 'ContactManager_android_contacts.pyc', 'howdo.py', 'Offical.apk', 'Offical_android_complex.py', 'Offical_android_complex.pyc', 'Official android_simple.py', 'Official android_simple.pyc', 'selendroid-test-app.apk', 'try.py']
以列表的形式全部列举出来,其中没有区分目录和文件。
4. os.remove()——删除指定文件
os.remove("C:\Users\paul\Desktop\IMG_0210.PNG")
5. os.rmdir()——删除指定目录
os.remove("C:\Users\paul\Desktop\test")
6. os.mkdir()——创建目录
os.mkdir("C:\Users\paul\Desktop\\test")
注意:这样只能建立一层,要想递归建立可用:os.makedirs()
os.makedirs("C:\Users\paul\Desktop\\test\ust")
7. os.path.exists()——检验指定的对象是否存在。是True,否则False.例:
os.path.exists("C:\\Users\\paul\\Desktop\\1.txt")
8. os.path.split()——返回路径的目录和文件名二元数组。例:
os.path.split("C:\\Users\\paul\\Desktop\\1.txt") ('C:\\Users\\paul\\Desktop', '1.txt') os.path.split("C:\\Users\\paul\\Desktop\\") ('C:\\Users\\paul\\Desktop', '')
9. os.system()——执行shell命令。例:
os.system("cmd")
10. os.path.getsize()——获得文件的大小,如果为目录,返回0
os.path.getsize("C:\\Users\\paul\\Desktop\\1.txt")
15. os.path.abspath()——获得绝对路径。例:
os.path.abspath(".") ------------------------------ 'C:\\Python27'
16. os.path.join(path, name)——连接目录和文件名。例:
将多个路径组合后返回,第一个绝对路径之前的参数将被忽略。
os.path.join('c:\\', 'csv', 'test.csv') ---------------------------------------- 'c:\\csv\\test.csv' >>> os.path.join('windows\temp', 'c:\\', 'csv', 'test.csv') ----------------------------------------- 'c:\\csv\\test.csv' >>> os.path.join('/home/aa','/home/aa/bb','/home/aa/bb/c') ------------------------------------------------------------ '/home/aa/bb/c
17.os.path.basename(path)——返回文件名
os.path.basename("C:\\Users\\paul\\Desktop\\1.txt") -------------------------------------------------------------- '1.txt'
18. os.path.dirname(path)——返回文件路径
os.path.dirname("C:\\Users\\paul\\Desktop\\1.txt") ------------------------------------------------------ 'C:\\Users\\paul\\Desktop'
19.获取当前文件绝对目录路径,一般封装模块时用到,不受运行程序相对路径影响
os.path.dirname(__file__)
20.规范path字符串形式
print os.path.join(os.path.dirname(__file__), 'oui_%s.dict' % (fix)) >>>C:/Users/Administrator/Desktop/22\oui_2.dict print os.path.normpath(os.path.join(os.path.dirname(__file__), 'oui_%s.dict' % (fix))) >>>C:\Users\Administrator\Desktop\22\oui_2.dict