在 Python 中獲取父目錄
Muhammad Waiz Khan
2023年1月30日
Python
Python Directory
Python Path
-
在 Python 中使用
pathlib模組的path.parent()方法獲取父目錄 -
在 Python 中使用
os模組的pardir()方法獲取父目錄 -
在 Python 中使用
os模組的dirname()方法獲取父目錄
本教程將講解在 Python 中獲取一個路徑的父目錄的各種方法。父目錄是指高於或高於給定目錄或檔案的目錄。例如,路徑 C:\folder\subfolder\myfile.txt 的父目錄是 C:\folder\subfolder。除了根目錄外,每個目錄都有一個父目錄。
在 Python 中使用 pathlib 模組的 path.parent() 方法獲取父目錄
path.parent() 方法,顧名思義,就是以字串的形式返回作為引數傳遞的路徑的父目錄。因此,要得到一個路徑的父目錄,我們需要將路徑字串傳遞給 pathlib 模組的 path.parent() 方法。
下面的示例程式碼演示瞭如何在 Python 中使用 path.parent() 來獲取一個路徑的父目錄。
from pathlib import Path
path1 = Path(r"C:\folder\subfolder\myfile.txt")
path2 = Path(r"C:\Myfile.txt")
print(path1.parent)
print(path2.parent)
輸出:
C:\folder\subfolder
C:\
在 Python 中使用 os 模組的 pardir() 方法獲取父目錄
os.pardir 是指父目錄的常量字串。對於 Windows 和 POSIX 作業系統,它是'..',對於 Mac 作業系統,它是'::'。
當我們在 os.path.join() 方法中把給定的路徑和 os.pardir 結合起來,我們就可以得到給定目錄的父目錄。
下面的示例程式碼演示瞭如何使用 os 模組的 os.pardir 和 path.join() 方法來獲取路徑的父目錄。
import os.path
path1 = r"C:\folder\subfolder\myfile.txt"
path2 = r"C:\Myfile.txt"
print(os.path.abspath(os.path.join(path1, os.pardir)))
print(os.path.abspath(os.path.join(path2, os.pardir)))
輸出:
C:\folder\subfolder
C:\
如上所述,如果作業系統是 Windows 或 POSIX,如果我們將 os.pardir 替換為'..',我們也可以得到同樣的結果。
import os.path
path1 = r"C:\folder\subfolder\myfile.txt"
path2 = r"C:\Myfile.txt"
print(os.path.abspath(os.path.join(path1, "..")))
print(os.path.abspath(os.path.join(path2, "..")))
輸出:
C:\folder\subfolder
C:\
在 Python 中使用 os 模組的 dirname() 方法獲取父目錄
os 模組的 dirname() 方法將路徑字串作為輸入,並返回父目錄作為輸出。
下面的示例程式碼演示瞭如何使用 dirname() 方法獲取路徑的父目錄。
import os.path
path1 = Path(r"C:\folder\subfolder\myfile.txt")
path2 = Path(r"C:\Myfile.txt")
print(os.path.dirname(path1))
print(os.path.dirname(path2))
輸出:
C:\folder\subfolder
C:
Enjoying our tutorials? Subscribe to DelftStack on YouTube to support us in creating more high-quality video guides. Subscribe
相關文章 - Python Directory
- 在 Python 中列出目錄和子目錄中的所有檔案
- 在 Python 中從路徑中獲取目錄
- 在 Python 中對資料夾中的每個檔案執行命令
- 用 Python 開啟目錄中的所有檔案
- 在 Python 中列出子目錄