python獲取當前絕對路徑
1. 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腳本的文件名,不一定是當前的路徑。
希望對你有所幫助。
2. 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
3. python獲取當前目錄、上一級目錄
在Python編程中,獲取當前目錄、上一級目錄以及更高級的目錄,主要依賴於`os`和`os.path`模塊中的幾個關鍵函數。
首先,使用`os.getcwd()`函數可以輕松獲取當前目錄的完整路徑。
`os.path.join()`是一個靈活的路徑拼接工具,可以將目錄和文件名組合成完整的路徑。
`os.path.dirname()`非常實用,它可以從給定的完整路徑中提取出上一級目錄的名字。
而`os.path.abspath()`則能獲取一個相對路徑或文件名的絕對路徑,對於絕對目錄的處理尤其有效。
要獲取上一級目錄,你只需將路徑字元串用`os.path.dirname()`處理即可。
如果需要獲取上上一級目錄,只需重復應用`os.path.dirname()`函數兩次。
探索更多目錄操作方法,了解如何在Python中高效地管理文件和目錄結構,是每個Python程序員的必修課。通過組合使用這些函數,你可以實現靈活的文件路徑處理。
4. 璇鋒暀鍙浠ユ煡鐪媝ython瑙i噴鍣ㄧ増鏈鍙鋒垨鑰呭畨瑁呰礬寰勫懡浠
鎴戜滑棣栧厛灝唒ython鐨勫畨瑁呰礬寰勬坊鍔犲埌鐜澧冨彉閲忥紝鐒跺悗鍙浠ラ氳繃鍛戒護鎻愮ず絎︽搷浣減ython銆傛寜win+R閿鎵撳紑榪愯岋紝杈撳叆鈥渃md鈥濓紝鎵撳紑鍛戒護鎻愮ず絎﹁緭鍏python錛屽洖杞︼紝榪欐牱灝卞彲浠ョ湅鍒皃ython褰撳墠鐨勭増鏈鍙蜂簡銆
灝唒ython鐨勫畨瑁呰礬寰勬坊鍔犲埌鐜澧冨彉閲忎箣鍚庯紝鍙浠ラ氳繃鍛戒護鎻愮ず絎︽搷浣減ython錛屾寜win+R閿鎵撳紑榪愯岋紝杈撳叆鈥渃md鈥濓紝濡備笅鍥炬墍紺恆傝繘鍘誨懡浠ゆ彁紺虹︿箣鍚庯紝杈撳叆鈥減ython鈥濄
鏂規硶涓錛歸hereispython鏂規硶浜岋細whichpython鎯寵佹煡鐪媢buntu涓瀹夎呯殑python鐗堟湰鍙楓傜壒鍒鏄痩inux緋葷粺錛岃呬簡澶氫釜python錛屾湁鏃跺欐壘涓嶅埌python鐨勭粷瀵硅礬寰勶紝鏈夋椂鍊欒呬簡涓猟jango錛屽張鎵句笉鍒癲jango瀹夎呭埌鍝閲屼簡銆
鏌ユ壘python鐨勫懡浠ゆ槸錛歸hereispython緇撴灉濡備笅鎵紺猴紝鍙浠ョ湅鍒拌礬寰勬槸/usr/bin/pythonWindows騫沖彴鏌ョ湅錛氭墦寮cmd鍛戒護鎻愮ず絎︼紝杈撳叆鍛戒護wherePython錛屽洖杞﹀嵆鍙杈撳嚭Python鐨勫畨瑁呰礬寰勩
Python鐩鍓嶄富嫻佺殑鐗堟湰鏄疨ython2鍜孭ython3錛屼袱鑰呴兘鐩稿硅緝紼沖畾銆
瀹樻柟鏂囨。涓婃湁鍐欑殑錛宻ys.executable鏄褰撳墠Python瑙i噴鍣錛堟垨鑰呭叾浠朠ython瀹炵幇錛夌殑璺寰勩
5. python文件名獲取文件路徑
概述
使用os.path.abspath()函數來獲取文件絕對路徑
解析
文件目錄結構如下:
os.path.abspath(path)返回path規范化的絕對路徑(但這個路徑不一定是真實的路徑),如果path僅是一個文件名,使用該函數後返回的路徑是當前工作目錄路徑連接改文件名後所組成的新的路徑名。
>>> import os.path
>>> os.path.abspath("a.py")
'C:\Users\Administrator\a.py'
os.path.split(path)將path分割成目錄和文件名二元組返回
>>> os.path.split("C:\Users\Administrator\a.py")
('C:\Users\Administrator', 'a.py')
os.path.dirname(path)返回path的目錄,其實就是os.path.split(path)的第一個元素
>>> os.path.dirname("C:\Users\Administrator\a.py")
'C:\Users\Administrator'
os.path.basename(path)返回path最後的文件名。如果path以/或結尾,就會返回空值。即os.path.split(path)的第二個元素。
>>> os.path.basename("C:\Users\Administrator\a.py")
'a.py'
os.path.commonprefix(list)返回list中所有path共有的最長的路徑,從左向右,相同字元。
os.path.exists(path)如果path存在,返回True;如果path不存在,返回False。
os.path.isabs(path)如果path是絕對路徑,返回True。
os.path.normpath(path)規范path字元串形式(規範文件路徑)
os.path.isfile(path)判斷路徑是否為文件,是返回True,否則返回False
os.path.isdir(path)如果path是一個存在的目錄,返回True,否則返貨False。
os.path.islink(path)是否是鏈接;但如果系統不支持鏈接,則返回False。
6. Python絕對路徑和相對路徑詳解
Python中的路徑管理主要涉及絕對路徑和相對路徑,它們在程序中起著至關重要的作用。首先,理解當前工作目錄(cwd)至關重要,這是所有非根文件名或路徑的默認搜索位置。os.getcwd()函數可以獲取當前工作路徑,而os.chdir()則用來改變它,如果嘗試修改不存在的目錄,Python會報錯。
路徑有絕對路徑和相對路徑兩種形式。絕對路徑從根文件夾開始,Windows上通常以盤符(如C:)表示,而Unix系統則用/。相對路徑則基於當前工作目錄,如".\demo.txt"表示當前目錄下的demo.txt文件,..\則表示上一級目錄。
Python的os.path模塊提供了一系列工具,如os.path.abspath()用於轉換相對路徑到絕對路徑,os.path.isabs()檢測路徑是否為絕對路徑,os.path.relpath()則給出從一個路徑到另一個路徑的相對路徑。os.path.dirname()和os.path.basename()分別獲取路徑的目錄部分和文件名部分,而os.path.exists(), os.path.isfile(), os.path.isdir()則用於檢查路徑是否存在,是文件還是文件夾。
在實際操作中,根據自己的系統環境,靈活運用這些函數處理路徑問題,是Python編程中不可或缺的一部分。