前言:在自动化测试中,经常需要查找操作文件,比如说查找配置文件(从而读取配置文件的信息),查找测试报告(从而发送测试报告邮件),经常要对大量文件和大量路径进行操作,这就依赖于os模块,所以今天整理下比较常用的几个方法。网上这方面资料也很多,每次整理,只是对自己所学的知识进行梳理,从而加深对某个模块的使用。
那我们看看他们的使用吧:
获取文件所在路径
import os
os.path.dirname(__file__) 获取当前文件的所在路径
输入:
import osfrom reptile import *print(os.path.dirname(__file__))
输出:
F:/Python/python.exe F:/Python/pag/dict_usage.py
F:/Python/pag
1-1.print (os.path.dirname(os.path.dirname(__file__))) 获取当前文件的所在目录的上级路径
输入:
import osfrom reptile import *print(os.path.dirname(os.path.dirname(__file__)))
输出:
F:/Python/python.exe F:/Python/pag/dict_usage.py
F:/Python
1-2.print (os.path.dirname(os.path.dirname(os.path.dirname(__file__)))) 获取当前文件的所在目录的上级目录的上级路径
输入:
import osfrom reptile import *print (os.path.dirname(os.path.dirname(os.path.dirname(__file__))))
输出:
F:/Python/python.exe F:/Python/pag/dict_usage.py
F:/
2.os.getcwd()——得到当前工作的目录。
输入:
print (os.getcwd())输出:
F:/Python/pag
3.os.name()——判断现在正在实用的平台,Windows 返回 ‘nt‘; Linux 返回'posix‘
4,os.listdir()——指定所有目录下所有的文件和目录名。
输入:
print (os.listdir())
输出:
F:/Python/python.exe F:/Python/pag/dict_usage.py
['CRVanguard.py', 'dict_usage.py', 'establish_review.py', 'invoketestcase.py', '__init__.py', '__pycache__']
#以列表的形式全部列举出来,其中没有区分目录和文件。
5.os.remove()——删除指定文件
输入:
print (os.remove('E:/python-3.2.3.amd64.msi'))
输出:
F:/Python/python.exe F:/Python/pag/dict_usage.py
None
6. os.rmdir()——删除指定目录
7. os.mkdir()——创建目录注意:这样只能建立一层,
8.os.makedirs()——递归建立目录
9.os.path.isfile()——判断指定对象是否为文件。是返回True,否则False
10.os.path.isdir()——判断指定对象是否为目录。是True,否则False
输入:
print (os.path.isdir('lib'))
输出:
F:/Python/python.exe F:/Python/pag/dict_usage.py
False
11.os.path.exists()——检验指定的对象是否存在。是True,否则False.例:
新闻热点
疑难解答