2016-11-10 70 views
0

因此,我有一個python腳本my_script.py,它位於文件夾Test中,我位於此文件夾之外。該腳本需要訪問存儲在文件夾Test內的文件my_data.dat的一些輸入數據。當腳本具有文件路徑時,從目錄外部運行python代碼

現在,當我試圖從文件夾Test外運行該腳本,使用簡單python my_script.py,它試圖從我運行該腳本,所以無法在文件夾中找到my_data.dat。我怎麼能告訴它使用正確的路徑,而不實際修改my_script.py中的路徑?

我不想修改腳本中的路徑,因爲腳本一般用於各種路徑,整個事情將在稍後自動完成。

回答

1

您需要使用絕對文件路徑而不是相對文件路徑。

取得目錄包含了Python文件的絕對路徑:

import os 
ROOT_DIR = os.path.dirname(__file__) 

,你可以得到的my_data.dat

data_file_path = os.path.join(ROOT_DIR, 'my_data.dat') 

絕對路徑,隨後使用data_file_path代替"my_data.dat"

0

可以傳遞作爲腳本參數的路徑my_data.dat,或者(如果數據文件始終爲i在與腳本相同的目錄中),可以使用變量__file__來確定腳本的位置,並查找該目錄中的數據文件。

相關問題