如何表示python中的相對路徑
下面的路徑介紹針對windows在編寫的py文件中打開文件的時候經(jīng)常見到下面其中路徑的表達(dá)方式:
open('aaa.txt') open('/data/bbb.txt') open('D:\\user\\ccc.txt')
這三種表達(dá)式里面,前兩個都是相對路徑,第三個則是絕對路徑。絕對路徑比較好理解,就是最完整的路徑,相對路徑的相對則是不完整路徑,這個相對指的就是相對于當(dāng)前文件夾路徑,其實就是你編寫的這個py文件所放的文件夾路徑!也就是說你寫的相對路徑必須是當(dāng)前文件夾A里的文件a或者A里的文件夾B里的文件才可以open。
假設(shè)當(dāng)前的py文件夾所處的位置是:D:\user\public
那么三行代碼打開的文件所屬的路徑分別是:
D:\user\public\aaa.txt
D:\user\public\data\bbb.txt
D:\user\private\ccc.txt
很好理解就是當(dāng)要打開py文件所處的文件時只要使用相對路徑就行了,而要使用其他文件夾的則需使用絕對路徑。
注:我們常用'/‘來表示相對路徑,'\‘來表示絕對路徑,上面的路徑里\\是轉(zhuǎn)義的意思,不懂的自行百度。
此外,網(wǎng)頁網(wǎng)址和linux、unix系統(tǒng)下一般都用'/‘
當(dāng)然我們也可以獲得當(dāng)前文件夾的絕對路徑,如下:
import os path1=os.path.abspath('.') #表示當(dāng)前所處的文件夾的絕對路徑 path2=os.path.abspath('..') #表示當(dāng)前所處的文件夾上一級文件夾的絕對路徑
所以我們常設(shè)置一個path1的全局變量來表示當(dāng)前的絕對路徑,再加上相對路徑來打開需要打開的文件,這么做是為了在不同的平臺上不沖突,因為不同平臺在相對路徑上的表示上存在區(qū)別。
知識點擴展:
1、絕對路徑
os.path.abspath("文件名"):
顯示的是一個文件的絕對路勁
>>> import os >>> os.chdir("E:\\PycharmProjects\\odycmdb\\odycmdb") >>> os.listdir() ['settings.py', 'urls.py', 'wsgi.py', '__init__.py', '__pycache__'] >>> os.path.abspath("settings.py") 'E:\\PycharmProjects\\odycmdb\\odycmdb\\settings.py'
2、相對路徑
os.path.dirname("文件名"):
顯示的是一個文件的相對路徑
>>> import os >>> os.chdir("E:\\PycharmProjects\\odycmdb\\odycmdb") >>> os.listdir() ['settings.py', 'urls.py', 'wsgi.py', '__init__.py', '__pycache__'] >>> os.path.dirname("settings.py")
到此這篇關(guān)于如何表示python中的相對路徑的文章就介紹到這了,更多相關(guān)python相對路徑寫法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
tensorflow 實現(xiàn)自定義layer并添加到計算圖中
今天小編就為大家分享一篇tensorflow 實現(xiàn)自定義layer并添加到計算圖中,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02python?request要求接口參數(shù)必須是json數(shù)據(jù)的處理方式
這篇文章主要介紹了python?request要求接口參數(shù)必須是json數(shù)據(jù)的處理方式,Reqeusts支持以form表單形式發(fā)送post請求,只需要將請求的參數(shù)構(gòu)造成一個字典,然后傳給requests.post()的data參數(shù)即可,本文通過實例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧2022-08-08Python?中的?Counter?模塊及使用詳解(搞定重復(fù)計數(shù))
Counter 是一個簡單的計數(shù)器,用于統(tǒng)計某些可哈希對象的數(shù)量。它以字典的形式存儲元素和它們的計數(shù),這篇文章主要介紹了Python?中的?Counter?模塊及使用詳解(搞定重復(fù)計數(shù)),需要的朋友可以參考下2023-04-04如何實現(xiàn)Python調(diào)用Golang代碼詳解
這篇文章主要介紹了如何實現(xiàn)Python調(diào)用Golang代碼,Python和Golang都是當(dāng)下非常流行的編程語言,在實際開發(fā)中,我們可能會遇到需要將Python和Golang進行組合使用的場景,感興趣想要詳細(xì)了解可以參考下文2023-05-05Python中try excpet BaseException(異常處理捕獲)的使用
本文主要介紹了Python中try excpet BaseException(異常處理捕獲)的使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03PyQT5 實現(xiàn)快捷鍵復(fù)制表格數(shù)據(jù)的方法示例
這篇文章主要介紹了PyQT5 實現(xiàn)快捷鍵復(fù)制表格數(shù)據(jù)的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06