Python標準庫pathlib操作目錄和文件

學習 Python 時,尤其是在進行文件操作和數據處理時,經常會處理路徑問題。最常用和常見的是 os.path 模塊,它將路徑當做字符串進行處理,如果使用不當可能導致難以察覺的錯誤,而且代碼很難跨平臺復用。pathlib 就是一個非常棒的Python標準庫,超級好用。

pathlib模塊提供瞭一種在 POSIX 系統(如 Linux 和 Windows)下運行良好的高級抽象,它抽象瞭資源路徑和資源命名結構,把文件系統接口從os模塊中隔離出來,將操作作為方法提供,使用更簡單。

下面這張圖,完美詮釋pathlib的核心

圖片

pathlib 基本組件

>>> from pathlib import Path
>>> path = Path(r'C:/Users/Miguel/projects/blog/config.tar.gz')
>>> path.drive
'C:'
>>> path.root
'/'
>>> path.root
'C:/'
>>> path.parent
WindowsPath('C:/Users/Miguel/projects/blog')
>>> path.name
'config.tar.gz'
>>> path.stem
'config.tar'
>>> path.suffix
'.gz'
>>> path.suffixes
['.tar', '.gz']

常用屬性和基本方法

pathlib的常用屬性

Path.parents  # 返回所有上級目錄的列表
Path.parts  # 分割路徑 類似os.path.split(), 不過返回元組
Path.suffix   # 返回文件後綴

pathlib的常用基本方法

Path.is_dir()  # 判斷是否是目錄
Path.is_file()  # 是否是文件
Path.exists()  # 判斷路徑是否存在
Path.open()  # 打開文件(支持with)
Path.resolve()  # 返回絕對路徑
Path.cwd()  # 返回當前目錄
Path.iterdir()  # 遍歷目錄的子目錄或者文件
Path.mkdir()  # 創建目錄
Path.rename()  # 重命名路徑
Path.unlink()  # 刪除文件或目錄(目錄非空觸發異常)
Path.joinpath()  # 拼接路徑

os and os.path VS pathlib

pathlib 可替代 os 和 os.path 的常用功能:

圖片

總結

pathlib 將路徑作為對象創建,提供瞭處理文件路徑的方便快捷的方法。

本文我並沒有羅列pathlib的每一個用法,我覺得最重要的是要充分理解 pathlib 基本組件,然後有疑問去查文檔即可。

參考:
https://miguendes.me/python-pathlib https://docs.python.org/3/library/pathlib.html
https://www.cnblogs.com/poloyy/p/12435628.html

以上就是Python標準庫pathlib操作目錄和文件的詳細內容,更多關於pathlib庫操作目錄和文件的資料請關註WalkonNet其它相關文章!

推薦閱讀: