1. 程式人生 > 其它 >Python - 路徑庫pathlib

Python - 路徑庫pathlib

pathlib的簡單介紹

  • 官方定義:Object-oriented filesystem paths(面向物件的檔案系統路徑)
  • 官方推薦:pathlib是一個從3版本開始就能完全替代os.path的內建庫,在python官網中這樣說 "對於字串的低階路徑操作,您也可以使用該 os.path模組"

匯入

1 from pathlib import Path

獲取當前檔案路徑

1 print(Path.cwd())

獲取上層、上上層目錄

1 print(Path.cwd().parent.parent)

拼接目錄

1 #獲取當前目錄的上上層目錄下的檔案:
2 paths = ["
apk","download"] 3 print(Path.cwd().parent.parent.joinpath(*paths))

建立資料夾並重命名

1 # 建立 project/test目錄
2 Path('project/test').mkdir(parents=True, exist_ok=True)
3 # 將test.txt 重新命名為 project/tests.txt
4 Path('test.txt').rename('project/test.txt')

pathlib的常用基本方法

 1 Path.parents  # 返回所有上級目錄的列表
 2 Path.parts  #
分割路徑 類似os.path.split(), 不過返回元組 3 Path.root  # 返回路徑的根目錄 4 Path.is_dir()  # 判斷是否是目錄 5 Path.is_dir()  # 是否是檔案 6 Path.exists()  # 判斷路徑是否存在 7 Path.open()  # 開啟檔案(支援with) 8 Path.resolve()  # 返回絕對路徑 9 Path.cwd()  # 返回當前目錄 10 Path.iterdir()  # 遍歷目錄的子目錄或者檔案 11 Path.mkdir()  # 建立目錄 12 Path.rename()  # 重新命名路徑
13 Path.unlink()  # 刪除檔案或目錄(目錄非空觸發異常) 14 Path.joinpath()  # 拼接路徑

TypeError: unsupported operand type(s) for +: 'PosixPath' and 'str'

  • 使用了一個PosixPath的變數要與str型別的相關聯,“+”這個符號有相加的作用也有連線的作用,不知道如何去處理。
  • 因此,可呼叫***str()函式***,將非字串值表示為字串。