shutil模組操作檔案

2022-09-21 05:09:09 字數 1248 閱讀 7390

"""

shutil(或稱為 shell 工具)模組中包含一些函式,

讓你在 python 程式中複製、移動、改名和刪除檔案

"""import os

import shutil

cwd = os.getcwd()

def copy():

"""複製乙個檔案,返回被複製檔案的新名字"""

os.makedirs(os.path.join(cwd, 'shutilsource'))

# 複製乙個檔案

shutil.copy('./a.txt', './shutilsource')

shutil.copy('./a.txt', './shutilsource/a_copy.txt')

def copytree():

"""複製整個資料夾,返回新複製的資料夾的路徑"""

new_dir_path = shutil.copytree(os.path.join(cwd, 'shutilsource'), os.path.join(cwd, 'shutilsource_copy'))

print(new_dir_path)

def move():

"""檔案和資料夾的移動與改名, 會覆蓋同名檔案

shutil.move('c:\\bacon.txt', 'c:\\eggs\\new_bacon.txt')

eggs如果存在,會移動並重命名

shutil.move('c:\\bacon.txt', 'c:\\eggs'),

eggs如果不存在,會被當作檔案處理,也就是重新命名,只是沒有字尾

shutil.move('c:\\bacon.txt', 'c:\\eggs\\ham'),

eg eggs如果不存在,會丟擲異常

"""shutil.move('./shutilsource/a_copy.txt', cwd)

def rm():

"""- 用 os.unlink(path)將刪除 path 處的檔案。

- 呼叫 os.rmdir(path)將刪除 path 處的資料夾。該資料夾必須為空,其中沒有任

何檔案和資料夾。

- 呼叫 shutil.rmtree(path)將刪除 path 處的資料夾,它包含的所有檔案和資料夾都會被刪除。

"""# os.unlink('./a_copy.txt')

# shutil.rmtree('./shutilsource_copy')

Python檔案操作模組shutil

shutil.copyfileobj fsrc,fdst length import shutil f1 open 1.txt r encoding utf 8 f2 open 2.txt w encoding utf 8 shutil.copyfileobj f1,f2 f1.close f2.c...

python庫之檔案操作 shutil模組

shutil是乙個高階的操作檔案,資料夾,壓縮包的模組 import shutil shutil.move e train data test img e train data test img v2 將資料夾test img重新命名為test img v2,裡面的檔案不變 shutil.copy ...

python 檔案操作模組shutil和copy

shutil 模組 高階的 檔案 資料夾 壓縮包 處理模組 shutil.copyfileobj fsrc,fdst length 將檔案內容拷貝到另乙個檔案中 import shutil shutil.copyfileobj open old.xml r open new.xml w shutil...