大爽Python入門教程 5-4 文件路徑之相對路徑與絕對路徑


大爽Python入門公開課教案 點擊查看教程總目錄

本章第三節 文件讀寫中的open(file, mode)中的file,嚴格來講是文件路徑,而不只是文件名。

一般來講,盡量保證代碼文件,和要讀取的文件在同一文件夾下。
因為此時代碼里面讀取文件,文件路徑可以直接使用文件名(帶后綴名的)。

如果文件和代碼不在一文件夾下,就相對比較麻煩。

假設要讀取的文件叫做001.txt,之后簡稱文件
代碼文件叫demo5.py,之后簡稱代碼
以下分情況討論,

1 相對路徑

當文件和代碼的相對關系固定時,可以使用相對路徑。

文件上級文件夾和代碼平級

如下所示

root
|---demo5.py
|---text
    |---001.txt

此時代碼里面讀取文件
file應該寫為text/001.txt

進一步地,如果文件上級文件夾的上級文件夾和代碼平級。
如下所示

root
|---demo5.py
|---files
    |---text
        |---001.txt

此時代碼里面讀取文件
file應該寫為files/text/001.txt

此情況衍生情況同理

代碼上級文件夾和文件平級

如下所示

root
|---001.txt
|---codes
    |---demo5.py

此時代碼里面讀取文件
file應該寫為../001.txt

進一步地,如果代碼上級文件夾的上級文件夾和文件平級。
如下所示

root
|---001.txt
|---codes
    |---simple
        |---demo5.py

此時代碼里面讀取文件
file應該寫為../../001.txt

此情況衍生情況同理

復合情況

此時使用上面兩種語法,聯合處理。

比如代碼上級文件夾和文件的上級文件夾平級。
如下

root
|---text
    |---001.txt
|---codes
    |---demo5.py

此時代碼里面讀取文件
file應該寫為../text/001.txt

絕對路徑

文件位置本身基本不發生變化的時候,可以使用絕對路徑。
比如假設計算機的D盤里有一個projects文件夾,
projects文件夾下有一個lesson5文件夾,
lesson5文件夾下有一個001.txt文件。

此時001.txt的絕對路徑為
D://projects/lesso5/001.txt

補充,硬盤下面文件夾的絕對路徑寫法為:
硬盤名 + :// + 文件夾名

對比

絕對路徑也可稱完整路徑,是指向文件系統中某個固定位置的路徑,不會因當前的工作目錄而產生變化。為做到這點,它必須包括根目錄。

相對路徑則是以指定的工作目錄作為基點,避開提供完整的絕對路徑。文件名稱就可以被視為以指定工作目錄為基點的一個相對路徑(雖然一般不將其稱之為路徑)。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM