① 如何獲取 python 模塊的路徑
1 import a_mole
2 print a_mole.__file__
上述代碼將范圍 .pyc 文件被載入的路徑,如果需要跨平台解決方案,可用下面代碼:
1 import os
2 path =os.path.dirname(amole.__file__)
② python 中怎麼獲取工作路徑
importos
#:os.path.join(BASE_DIR,...)
BASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
可以參考django的方式。注意,若獲取路徑的文件位於項目根目錄中,則需要剝掉一層os.path.dirname :
importos
#:os.path.join(BASE_DIR,...)
BASE_DIR=os.path.dirname(os.path.abspath(__file__))
③ python 怎麼查看當前路徑
先要裝載 os模塊:
import os
print os.getcwd()
或者
print os.path.abspath(os.curdir)
print os.path.abspath('.')
就可以了。
( . 代表當前的路徑,.. 代表當前路徑的上一級路徑。這在UNIX和Windows系統意義是類似的。
例如:
以Winodws系統為例:
當前路徑是F:\Temp, 則 . 的絕對路徑就是F:\Temp
.. 的絕對路徑就是F:\
)
要獲得上級目錄的路徑也很簡單,print os.path.abspath('..')就可以了。
要改變當前路徑,os.chdir(path) 就可以了 path里填要改變到的目錄,例如os.chdir('D:\Program Files')
這樣大部分的文件操作現在是相對於D:\Program Files 來了,例如fobj = open('Hello.txt'),實際會打開D:\Program Files\Hello.txt文件。
不要通過sys.argv[0]獲得當前路徑,那是不正確的。sys.argv[0] 是當前執行的Python腳本的文件名,不一定是當前的路徑。
希望對你有所幫助。
④ Python怎樣得到資源文件的絕對路徑
路徑有兩種,相對路徑和絕對路徑。 對於Unix-Like系統來說,絕對路徑就是以/開頭的路徑。 相對路徑就是不以/開頭的路徑。
其實,操作系統中實際只有一種路徑,那就是絕對路徑。 相對路徑,只是程序自己幫我們修改為絕對路徑了。
操作系統的程序運行器利用環境變數,為我們把相對路徑生成為絕對路徑。getcwd()函數用於得到當前進程的當前工作路徑。也就是相對路徑的起始點。
在python中,可以使用os.chdir函數切換當前工作路徑。
當前工作路徑,是程序執行時所在的路徑。 我們在哪個目錄下執行程序,當前路徑就是哪一個目錄。
我們常常需要在python中執行一些源碼目錄下的文件。如,我們可能需要用eval動態執行一個python源文件。或者一些配置文件到目標系統的路徑下。此時,我們無法知道這些文件的絕對路徑,因為我們不能預知用戶會把我們的程序安裝到哪一個目錄下。
我們也不能依賴於當前工作路徑。因為用戶很可能不在我們的源碼目錄下執行我們的程序。
那麼,此時我們如何得到源碼目錄下文件的絕對路徑呢?
我是這樣做的:
ABSPATH=None
if __name__ == '__main__':
ABSPATH=os.path.abspath(sys.argv[0])
ABSPATH=os.path.dirname(ABSPATH)+"/"
print ABSPATH
通過拿到第一個參數的絕對路徑,我們就知道了程序所在的絕對路徑,我們就能夠使用ABSPATH這個全局變數組裝出 我們源碼目錄下的任意一個文件的絕對路徑了!