當前位置:首頁 » 編程語言 » python獲取文件的路徑

python獲取文件的路徑

發布時間: 2022-07-20 20:37:54

1. 如何使用python獲取文件所在目錄和文件名

python有個魔術變數__file__

#(前後各兩個下劃線)。這個變數就是當前文件的絕對路徑。
再利用Pyhon自帶的os模塊中的path模塊可以處理路徑,分理出目錄和文件名。以下是示例代碼。
import os
folder,filename=os.path.split(__file__)
print(folder,filename)不明白可追問。

2. python讀取文件相對路徑

比如你在和當前文件並列的"game"文件夾下有"score.txt"文件,那麼相對路徑表示為:
"game/score.txt"
就是和這個py文件並列的文件夾前面不需要加"/",後面的都需要加,別忘了加上後綴。
例:
with open("game/score.txt", mode = "a+", encoding = "utf-8") as f:
score = f.readline()

3. 用python的什麼命令可以獲得當前文件所在的路徑

先將終端所在路徑切換到python腳本文件的目錄下然後給腳本文件運行許可權,一般755就OK,如果完全是自己的私人電腦,也不做伺服器什麼的,給777的許可權問題也不大(具體許可權含義參考chmod指令的介紹,就不贅述了):chmod 755 ./*.py然後執行。如果在腳本內容的開頭已經給出了類似於如下的注釋:#!/usr/bin/env python那就可以直接在終端里運行:./*.py如果沒有這個注釋就在終端中執行:python ./*.py如果是有圖形界面的腳本在前面的chmod之後,直接雙擊(KDE桌面是單擊)文件來執行即可

4. 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

5. python如何選擇文件,並獲得所選擇文件的全路徑名稱

可以使用絕對路徑,類似於d:\work\deter.xls
python中打開文件的路徑是當前工作路徑,可以通過下面的方式查看
import os
os.getcwd() 可以通過
os.chdir('c:\\')
進行修改

6. python 獲取文件夾路徑問題

#encoding:utf-8
importos
printos.path.abspath("test")

使用os.path.abspath方法可以輸出文件夾的絕對路徑。

參數裡面要寫相對路徑,比如腳本和文件夾在同一路徑,就直接寫名字即可。如果文件夾在上一個目錄,就寫成"../test"。

其實從方法名也能看出來,是一個相對路徑轉絕對路徑的方法。

7. python怎麼得到文件所在路徑

python獲取文件所在目錄的方法,具體步驟如下:
相關推薦:《Python入門教程》
第一步,通過import os導入os模塊。
第二步,模擬一個文件路徑,並賦值給變數filepath。
第三步:獲取文件所在目錄,使用os.path.dirname()。
在交互模式中,按回車鍵進行執行,即可得到文件所在目錄。

8. python怎麼根據文件名獲得文件路徑

獲取文件路徑可以使用OS模塊,代碼如下:

importos

srcPath=r"WallReference.pdf"

path=os.path.abspath(srcPath)

print"全路徑為:",path

print"路徑名,文件名",os.path.split(path)

導入os模塊;

  1. 需要操作的文件;

  2. 獲取文件的全路徑,即帶盤符的路徑;

  3. 輸出全路徑;

  4. 輸出路徑名和文件名;

9. 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。

10. 如何用python查詢文件路勁

最近在用Python腳本處理文件夾下面的文件名的搜索和重命名。其中碰到如何遞歸遍歷文件夾下面所有的文件,找到需要的文件,並且重命名的問題。其實如果看看Python的document,還是比較簡單的,這里直接給出使用方法,免得大家還要花精力去查找。

環境:
文件夾結構:
----path1
----path1-1
----path1-1.1.txt
----path1-2
----path1.1.txt
----path2
----recursiveDir.py
文件夾結構如上所示。

代碼分析(recursiveDir.py):

[python] view plain
<span style="font-size:18px;">import os

'''''
本腳本用來演示如何遍歷py腳本所在文件夾下面所有的文件(包括子文件夾以及其中包含的文件)。
重點演示如何獲取每個文件的絕對路徑。注意os.path.join(dirpath, filename)的用法。
'''

rootdir = os.getcwd()
print('rootdir = ' + rootdir)

for (dirpath, dirnames, filenames) in os.walk(rootdir):
#print('dirpath = ' + dirpath)
for dirname in dirnames:
print('dirname = ' + dirname)
for filename in filenames:
#下面的列印結果類似為:D:\pythonDirDemo\path1\path1-1\path1-1.1.txt
print(os.path.join(dirpath, filename))
if(filename=='path1-1.1.txt'):
os.chdir(dirpath)
#os.rename(os.path.join(dirpath, filename), dirpath + os.sep + 'path1-1.1.new.txt')
os.rename('path1-1.1.txt', 'path1-1.1.new.txt')
#os.remove(os.path.join(dirpath, filename))
#下面的輸出為fileName = path1-1.1.txt,並未包含絕對路徑,所以需要使用os.path.join來鏈接,獲取絕對路徑
print('fileName = ' + filename)
print('------------------one circle end-------------------')</span>

所以可以看到程序中使用os.path.join(dirpath, filename)來拼接出絕對路徑出來。注意下面的重命名用法,可以將工作目錄切換到os.chdir(dirpath),這樣就可以直接用os.rename(oldfile, newfile).Python會自動到dirpath下面查找oldfile並且重命名為newfile。注意工作目錄的含義:在Python的GUI中,使用os.getcwd()可以獲取到當前工作目錄。測試如下:

[html] view plain
<span style="font-size:18px;">>>> os.chdir('D:')
>>> os.getcwd()
'D:\\pythonDirDemo\\path1\\path1-1'
>>> os.chdir('D:\\')
>>> os.getcwd()
'D:\\'</span>

可見卻是可以用chdir改變工作目錄。這個代碼只是在重命名的時候用到的小技巧而已,大家知道有這個東西就行了,不過調用chdir之後,後續再獲取getcwd()就會被影響,所以警惕。

熱點內容
fgo安卓如何玩日服 發布:2025-02-01 00:49:40 瀏覽:715
sql2000服務管理器 發布:2025-02-01 00:48:02 瀏覽:677
榮耀暢玩什麼配置 發布:2025-02-01 00:36:35 瀏覽:458
電腦對時伺服器 發布:2025-02-01 00:36:22 瀏覽:162
閃迪存儲卡港版 發布:2025-02-01 00:31:25 瀏覽:78
visualstudio編譯器 發布:2025-02-01 00:31:20 瀏覽:753
如何移植安卓上面的軟體 發布:2025-02-01 00:28:03 瀏覽:121
一刀傳世混沌和破天是什麼伺服器 發布:2025-02-01 00:28:00 瀏覽:688
紅米k40怎麼修改安卓data 發布:2025-02-01 00:23:04 瀏覽:886
文件夾怎麼顯示全名 發布:2025-02-01 00:10:30 瀏覽:860