咱們在作自動化測試的時候,可能會遇到一些須要處理文件一些需求,那麼咱們能夠經過直接寫文件的目錄進行操做,固然做爲一名自動化測試工程師,怎麼可能用這種方法?python中自帶的有OS,咱們能夠經過os模塊進行幫助咱們解決這些問題python
os庫是Python標準庫,包含幾百個函數,經常使用的有路徑操做、進程管理、環境參數等app
os.path主要對文件路徑進行操做,具體有哪些操做?咱們能夠繼續往下看函數
這裏咱們須要先了解一個pycharm的小知識,在pycharm中的__file__表示文件自己,輸出的是一個絕對路徑。測試
# 返回當前文件名稱 a = os.path.basename(__file__) print('當前文件名:%s'%a) 輸出結果: 當前文件名:a1.py
# 當前文件絕對路徑 b = os.path.abspath(__file__) print('當前文件絕對路徑:%s'%b) 輸出結果: 當前文件絕對路徑:E:\python1\app\a1.py
# 當前文件路徑 c = os.path.dirname(__file__) print('當前文件路徑:%s'%c) 輸出結果: 當前文件路徑:E:/python1/app
# 判斷路徑是否存在 d = os.path.exists(__file__) print('文件存在:%s'%d) e = os.path.exists('E:\\python2') print('文件存在:%s'%e) 輸出結果: 文件存在:True 文件存在:False
# 路徑是否存在 a = os.path.lexists('E:\\python1') print('路徑是否存在:%s'%a) b = os.path.lexists('E:\\python2') print('路徑是否存在:%s'%b) 輸出結果: 路徑是否存在:True 路徑是否存在:False
# 返回文件修改時間 a = os.path.getatime('E:\\python1') print('文件修改時間:%s'%(time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(a)))) 輸出結果: 文件修改時間:2019-11-26 15:24:59
# 判斷文件是否存在 a = os.path.getsize(__file__) print('文件存在,文件大小爲:%s'%a) try: b = os.path.getsize('E:\\python1\a2.py') except Exception as msg: print('錯誤爲:%s'%msg) 輸出結果: 文件存在,文件大小爲:1217 錯誤爲:[WinError 123] 文件名、目錄名或卷標語法不正確。: 'E:\\python1\x072.py'
# 文件的真實路徑 a = os.path.realpath(__file__) print('文件的真實路徑:%s'%a) 輸出結果: 文件的真實路徑:E:\python1\app\a1.py
# 分割路徑和文件名 a = os.path.split(__file__) print('文件目錄:%s,文件名稱:%s'%(a[0],a[1])) 輸出結果: 文件目錄:E:/python1/app,文件名稱:a1.py
# 目錄和文件進行合併成路徑 a = os.path.join('E:\\python1\\app','123.jpg') print('合併成的路徑爲:%s'%a) 輸出結果: 合併成的路徑爲:E:\python1\app\123.jpg
這裏只寫了一些測試經常使用的一些os.path的模塊內容,有一些安靜也沒有用到過,全部就沒有寫,後面用到了,在給你們補充。spa