在日常編碼中,常常會有這些操作pathlib是跨平台的、物件導向的路徑操作庫,相對os.path作為string物件需要進行眾多繁瑣的操作對os.path進行了封裝,pathlib提供了乙個便捷的,物件導向的操作方式、在當前目錄或使用者目錄下新建乙個配置檔案,
獲取乙個檔案的路徑或上級目錄
這些都涉及路徑操作
相信大家都使用過
os.path
來處理過,這個痛苦我想」誰用誰知道吧」今天的主角
pathlib
就是來解決痛苦的…
pip install pathlib
os.path實現
pathlib實現import os
pwd = os.getcwd()
#當前檔案的父路徑
father_path = os.path
.abspath(os.path
.dirname(pwd)+os.path
.sep+".")
#當前檔案的前兩級目錄
grandfather_path = os.path
.abspath(os.path
.dirname(pwd)+os.path
.sep+"..")
import pathlib
pwd = pathlib.path.cwd()
pwd.parent
pwd.parent.parent
import pathlib
pathlib.path
.home()
pathlib.path
.cwd()
file_path.name # 獲取檔名import pathlib
cwd = pathlib.path.cwd()
file_path = cwd / 'my.conf'
file_path = cwd.joinpath('my.conf')
file_path.suffix # 獲取檔案字尾
file_path.anchor # 獲取頂級目錄
file_path.root # 獲取根
file_path._parts # 路徑分塊組合
import pathlib
cwd_path = pathlib.path.cwd()
file_path = cwd_path / 'my.conf'
file_path.write_text("debug = 1\n")
with file_path.open(mode='r') as fd:
for line in fd:
print(line)
print(file_path.read_text())
file_path.replace(file_path.with_name('your.conf'))
file_path.replace(file_path.with_suffix('.py'))
import pathlib
import collections
collections.counter(p.suffix for p in pathlib.path
.cwd().iterdir())
import pathlib
deftree
(directory):
print(f'- ')
for path in sorted(directory.rglob('*')):
depth = len(path.relative_to(directory).parts)
spacer = ' ' * depth
print(f'+ ')
tree(pathlib.path.cwd())
from datetime import datetime
directory = pathlib.path.cwd()
time, file_path = max((f.stat().st_mtime, f) for f in
directory.iterdir())
print(datetime.fromtimestamp(time), file_path)
超好用python庫 Pathlib
pathlib有多好用?可能只能這樣解釋了 自從接觸了pathlib,之前用的os相關操作,基本上就不想再用了 笑哭 這裡先做部分總結,在之後的使用中會繼續更新 from pathlib import path p path windowspath p.resolve 文件顯示是absolute p...
python路徑庫pathlib應用
from pathlib import path from tkinter importw 常用p path util print type p p print type str p p print p.exists print p.is dir 路徑組合 p2 p actions.py print...
Python標準庫pathlib操作目錄和檔案
目錄 學習 python 時,尤其是在進行檔案操作和資料處理時,經常會處理路徑問題。最常用和常見的是 os.path 模組,它將路徑當做字串進行處理,如果使用不當可能導致難以察覺的錯誤,而且 很難跨平台復用。pathlib就是乙個非常棒的python標準庫,超級好用。pathlib模組提供了一種在 ...