pathlib
是 Python 3.4+ 引入的一個新標準庫,它提供了一種面向對象的方式來處理文件系統路徑。相比于傳統的 os
和 os.path
模塊,pathlib
提供了更簡潔、更直觀的語法。以下是 pathlib
在 Python 中的一些實際應用場景:
使用 pathlib
,你可以非常容易地進行路徑操作,如連接、解析、獲取父目錄等。
from pathlib import Path
# 創建一個 Path 對象
p = Path('path/to/file.txt')
# 獲取父目錄
parent = p.parent
print(parent) # 輸出: path/to
# 連接路徑
new_path = p.with_name('new_file.txt')
print(new_path) # 輸出: path/to/new_file.txt
# 獲取文件擴展名
extension = p.suffix
print(extension) # 輸出: .txt
pathlib
提供了一些方法來創建和刪除文件和目錄。
from pathlib import Path
# 創建一個新目錄
new_dir = Path('new_directory')
new_dir.mkdir()
# 創建一個新文件
new_file = new_dir / 'file.txt'
new_file.touch()
# 刪除目錄(如果為空)
new_dir.rmdir()
# 刪除文件
new_file.unlink()
pathlib
也簡化了文件內容的讀寫操作。
from pathlib import Path
# 寫入文件
file = Path('example.txt')
file.write_text('Hello, world!')
# 讀取文件
content = file.read_text()
print(content) # 輸出: Hello, world!
使用 pathlib
,你可以輕松地遍歷目錄并對其內容進行操作。
from pathlib import Path
# 遍歷當前目錄下的所有文件
for file in Path('.').iterdir():
if file.is_file():
print(file.name)
# 遞歸遍歷目錄
for file in Path('.').rglob('*'):
if file.is_file():
print(file.relative_to('.').as_posix())
pathlib
還提供了查詢文件信息的方法,如大小、修改時間等。
from pathlib import Path
file = Path('example.txt')
# 獲取文件大小
size = file.stat().st_size
print(size) # 輸出: 文件大小(字節)
# 獲取文件最后修改時間
mtime = file.stat().st_mtime
print(mtime) # 輸出: 文件最后修改時間(Unix 時間戳)
總之,pathlib
提供了一種更現代、更直觀的方式來處理文件系統路徑和文件操作,使得代碼更加簡潔和易于理解。