python學習:絕對路徑和相對路徑
大牛們應該對路徑都很了解了,這篇文章主要給像我這樣的入門小白普及常識用的,啊哈
下面的路徑介紹針對windows,其他平台的暫時不是很了解。
在編寫的py文件中打開文件的時候經常見到下面其中路徑的表達方式:
- open('aaa.txt')
- open('/data/bbb.txt')
- open('D:\\user\\ccc.txt')
這三種表達式里面,前兩個都是相對路徑,第三個則是絕對路徑。絕對路徑比較好理解,就是最完整的路徑,相對路徑的相對則是不完整路徑,這個相對指的就是相對於當前文件夾路徑,其實就是你編寫的這個py文件所放的文件夾路徑!也就是說你寫的相對路徑必須是當前文件夾A里的文件a或者A里的文件夾B里的文件才可以open。
假設當前的py文件夾所處的位置是:D:\user\public
那么三行代碼打開的文件所屬的路徑分別是:
D:\user\public\aaa.txt
D:\user\public\data\bbb.txt
D:\user\private\ccc.txt
很好理解就是當要打開py文件所處的文件時只要使用相對路徑就行了,而要使用其他文件夾的則需使用絕對路徑。
注:我們常用’/‘來表示相對路徑,’\‘來表示絕對路徑,上面的路徑里\\是轉義的意思,不懂的自行百度。
此外,網頁網址和linux、unix系統下一般都用’/‘
當然我們也可以獲得當前文件夾的絕對路徑,如下:
- import os
- path1=os.path.abspath('.') #表示當前所處的文件夾的絕對路徑
- path2=os.path.abspath('..') #表示當前所處的文件夾上一級文件夾的絕對路徑
所以我們常設置一個path1的全局變量來表示當前的絕對路徑,再加上相對路徑來打開需要打開的文件,這么做是為了在不同的平台上不沖突,因為不同平台在相對路徑上的表示上存在區別。
以上。