Python 獲取當前檔案所在目錄

2021-08-10 04:14:20 字數 1203 閱讀 7095

python下獲取檔案所在的絕對目錄,大都通過:os.path.abspath,但如果你在其他目錄下,通過絕對路徑獲取,這時就會有錯。

例如:步驟1 在當用目錄執行

import os

import sys

print(os.path.abspath('main.py'))

結果為:

/home/abc/tiran/workspace/python/python3/test/main.py
步驟2 但如果切換到到其他目錄下,在執行:

結果和步驟1的結果是不一致的。如果你在程式中有基於當前目錄新建檔案或判斷檔案是否存在,那麼就會出錯。

因此,這時就需要通過:獲取檔案所在的絕對路徑,無論你在那個目錄下執行,它獲取的路徑是唯一的。

sys.path[0]
所以我們就可以在函式中,通過下面**將路徑設定成都當前目錄。

os.chdir(sys.path[0])
例如**:

有時sys.path[0]返回的可能不是當前的目錄,而是當前目錄下的某個檔案。因此可以通過下面的**進行過濾返回:

def get_current_path(self):

paths = sys.path

current_file = os.path.basename(__file__)

for path in paths:

try:

if current_file in os.listdir(path):

self.current_path = path

break

except (fileexistserror,filenotfounderror) as e:

print(e)

MyEclipse中開啟當前檔案所在資料夾

今天在myeclipse中開發乙個小玩意,發現沒有在idea中用的很熟的f10快捷鍵,開啟資料夾很不方便。myeclipse裡面就帶了類似的乙個外掛程式,點一下就可以開啟當前編輯檔案所在的資料夾,這樣就可以直接到資料夾裡面去做操作了。run external tools open external ...

獲取當前檔案路徑

getcurrentdirectory只是返回當前程序的當前目錄,而並不是程序的映象檔案 exe 所在的目錄 getcurrentdirectory 適用於xp等系統,在wince上不能使用 getmodulefilename 適用於wince2.0以後 使用方法 下面的一段 主要是獲得當前程式的執...

獲取當前檔案路徑。

之前搞模組載入,苦於無法獲取當前檔案路徑,檔名 後來沒通過獲取當前檔案路徑,檔名,給搞定了。結果今天把這個問題也解決了,做個記錄 file zhus err.js varcursrc newfunction catch e console.log cursrc zhus err 以上編碼,只適用於f...