Python - 路徑庫pathlib
阿新 • • 發佈:2022-01-12
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()函式***,將非字串值表示為字串。