Python是一門被廣泛使用的編程語言,Python腳本通常需要對文件進行讀寫操作。而那些需要讀寫的文件,其路徑往往並不在Python腳本的同一目錄下,這就需要我們了解Python相對路徑的寫法。
一、相對路徑概述
相對路徑是相對於當前文件或目錄的路徑,而不是系統或硬盤根目錄的路徑。相對路徑可相對於當前目錄或文件的相對位置描述文件的位置。相對路徑中,可以使用”.”表示當前目錄、”..”表示當前目錄的上級目錄。
import os
# 獲取當前文件所在路徑
currentPath = os.path.abspath(os.path.dirname(__file__))
print(currentPath)
上述代碼使用os模塊中的abspath方法,可以獲取當前文件所在的絕對路徑,dirname方法可以獲取當前文件所在目錄的路徑。
二、相對路徑中”.”和”..”的使用
相對路徑中,使用”.”表示當前目錄,”..”表示上級目錄。
# 將當前路徑下的文件file1.txt重命名
os.rename('./file1.txt','./file2.txt')
# 刪除上級目錄中的文件package.py
os.remove('../package.py')
在上述代碼中,”./”是可以省略的。但是在複雜的操作中,為了代碼的可讀性和可維護性,建議顯式的給出”./”。
三、相對路徑中的os.path模塊
os.path模塊可以用於跨平台操作文件路徑。在Unix系統上,文件路徑分隔符使用”/”,在Windows系統上,文件路徑分隔符使用”\”。因此,在Python中使用的路徑分隔符應該使用os.path.sep,保證在不同系統上的兼容性。
import os
# 獲取上級目錄的絕對路徑
parentPath = os.path.abspath(os.path.join(os.getcwd(), ".."))
print(parentPath)
上述代碼使用os.path模塊中的join方法實現了獲取上級目錄的絕對路徑。其中,os.getcwd()可以獲取當前文件所在的路徑。
四、相對路徑中的sys模塊
sys模塊和os模塊類似,也可以用於對文件路徑的操作。sys模塊中有一個path屬性,它是一個列表,裏面包含了Python解釋器的搜索路徑。我們可以在其中插入我們需要的路徑,使系統能夠找到我們需要的文件。
import sys
# 將當前路徑添加到sys.path中
sys.path.append('.')
上述代碼可以將當前路徑添加到sys.path中,並使Python腳本能夠找到當前路徑下的其他文件。
五、總結
相對路徑是相對於當前文件或目錄的路徑,可以使用”.”表示當前目錄、”..”表示上級目錄。在Python中使用os.path模塊和sys.path屬性可以更加靈活方便地對路徑進行操作。
原創文章,作者:ZAEKV,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/373664.html