檔案的重要屬性:檔名、路徑、檔案類型
Table of Contents
基本的檔案及目錄操作
windows 與 linux 上的路徑分隔符號
from pathlib import Path
path = Path('apple', 'banana', 'orange')
# 此時,path 為 WindowsPath 或 PosixPath 類別
type(path)
print(path)
str(path)
# 可以使用 / 運算子來加入路徑,比使用字串連接或 join() 安全可靠
# 使用時,左側開始的第一個或第二個,必須有一個為 Path 物件
new_path = path / 'peach'
print(new_path)
from pathlib import Path
# 目前工作目錄
Path.cwd()
# 家目錄
Path.home()
建立目錄
import os
# makedirs() 會建立所有必要的中間目錄,以確保完整路徑的存在
os.makedirs('C:\\tools\\basket')
絕對路徑與相對路徑
from pathlib import Path
Path.cwd().is_absolute() # True
Path('my', 'dir').is_absolute() # False
( Path.cwd() / Path('my', 'dir')).is_absolute() # True
判斷檔案或目錄是否存在
import os
os.path.exists("檔案或目錄的路徑")
os.path.isfile("檔案或目錄的路徑")
os.path.isdir("檔案或目錄的路徑")
取得檔案與目錄的資訊
import os
path_name = 'C:\\tools\\dir.txt'
os.path.basename(path_name)
os.path.dirname(path_name)
os.path.getsize(path_name)
(dir_name, file_name) = os.path.split(path_name)
進階的檔案及目錄操作 – 使用 shutil 套件
copytree(src_path, dst_path)
將來源目錄 (包含目錄下的所有檔案) 複製到指定的目的目錄
rmtree(path)
將指定目錄刪除,該目錄下的所有子目錄及檔案一併刪除。
copyfile(src_path, dst_path)
將指定的來源檔案複製到目的路徑
move(src_path, dst_path)
將指定的來源檔案搬移到目的路行
Comments