配置文件中,文件相對路徑的寫法


   需要讀寫文件時,如果直接寫絕對路徑,項目移植至其他平台時,文件就會因為路徑錯誤,讀寫或者導入不了,這時,我們就需要使用相對路徑的寫法,使項目的可移植性更好。

           相對路徑的思路是:

           ① 項目內的文件路徑相對項目的根目錄是不變的

           ② 根目錄相對平台根目錄是變化的

           所以,我們只需要找到項目根目錄的路徑,並且與文件相對項目根目錄的路徑拼接一起就可以了    

           

 

           示例如上圖所示,interface_test為項目名稱,配置的文件是DirTest_Path.py,所以先根據DirTest_Path.py文件先找到interface_test項目根路徑:

   代碼如下:

    import  os

    #os.path.dirname(__file__)       表示當前文件父目錄的路徑,即如上圖時,獲取的路徑是:"E:\python_work\test\interface_test\Utils\Dir_operate"

              #所以獲取項目根目錄的方法是:

               basepath=os.path.dirname(os.path.dirname(os.path.dirname(__file__) ))       #多少層父目錄,包裹多少層   os.path.dirname()

               #獲取結果:  basepath="E:\python_work\test\interface_test"   

              所以使用相對路徑獲取test_data.xlsx,可以如下拼接:

              dir_path=basepath.replace("/","\")+"\\Utils\\Dir_operate\\test_data.xlsx"                 #windows和linux系統文件的路徑斜杠不一樣,所以可以根據需要替換斜杠

           

       完整代碼:

  import  os

  basepath=os.path.dirname(os.path.dirname(os.path.dirname(__file__) ))

  dir_path=basepath.replace("/","\")+"\\Utils\\Dir_operate\\test_data.xlsx"                #windows平台寫法

   #dir_path=basepath.replace("\","/")+"//Utils//Dir_operate//test_data.xlsx"             #linux平台寫法

 

 

 

 

 

 

 

 

           


免責聲明!

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



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