python相對目錄的基本用法(一)


一般在代碼中涉及到操作文件時,最好使用文件的相對目錄,這樣在你的程序遷移到別人的電腦時,可以保證不會出現文件讀取異常的錯誤(另外,自動化測試時用例的讀取也要用相對目錄)

例子1

假如工程文件的目錄結構如下

main中存放的是整個程序的運行文件

test_case存放的是所有的測試用例

那么在run_report.py中需要指明測試用例所在的位置,需要用到os模塊

os.path.abspath 表示 獲得文件當前路徑
os.path.dirname 表示 獲得文件的父目錄

可以按照如下方式

import os

root_dir = os.path.dirname(os.path.abspath('.'))  # 獲取當前文件(這里是指run_report.py)所在目錄的父目錄的絕對路徑,也就是項目所在路徑E:\DDT_Interface
case_dir = root_dir + '/test_case/' # 根據項目所在路徑,找到用例所在的相對項目的路徑
print(root_dir)
print(case_dir)

執行結果如下

D:\worksoft\python36\python.exe E:/DDT_Interface/main/run_report.py
E:\DDT_Interface
E:\DDT_Interface/test_case/

Process finished with exit code 0

 例子2

如果運行主文件直接在工程文件下,沒有一個單獨的目錄了(因為只有一個文件,沒必要再單獨創建一個目錄)

run_all_case.py中關於讀取用例的寫法如下,只需用os.path.abspath('.')來獲取當前文件所在的路徑即可,再根據當前文件路徑定位用例的路徑

import os

root_dir = os.path.abspath('.')  # 獲取當前文件所在目錄,也就是"審批系統"所在目錄,即"E:\shenpi\審批系統"
case_path = root_dir + "/test_case"  # 獲取case所在目錄,即"E:\shenpi\審批系統\test_case"
print(case_path)

運行結果

D:\worksoft\python36\python.exe E:/shenpi/審批系統/run_all_case.py
E:\shenpi\審批系統/test_case

Process finished with exit code 0

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM