天天看點

Python實作對檔案的批量移動、複制、删除等前沿代碼實作結果展示

目錄

前沿

代碼實作

結果展示

前沿

        主要為對檔案的系列操作組合,對于大量重複性移動、複制、删除等工作,可嘗試使用。

代碼實作

# -*- coding = utf-8 -*-
# @time:2021/6/12 16:32
# Author:scw
# @File:檔案移動_複制_删除.py
# @Software:PyCharm
# Environment:Python3.6
import shutil, os.path, os


def augmented_move(target_folder, *filenames, verbose=False, **specific):
    def print_verbose(message, filename):
        if verbose:
            print(message.format(filename))  # 進展輸出

    for filename in filenames:
        target_path = os.path.join(target_folder, filename)
        if filename in specific:
            if specific[filename] == 'ignore':  # 忽略
                print_verbose("Ignoring {0}", filename)
            elif specific[filename] == 'copy':  # 複制
                print_verbose('Copying {0}', filename)
                shutil.copyfile(filename, target_path)
            elif specific[filename] == 'delete':  # 删除
                print_verbose('Deleting {0}', filename)
                os.remove(filename)
        else:
            print_verbose('Moving {0}', filename)  # 移動
            shutil.move(filename, target_path)


specific = {'檔案删除.py': 'ignore', '建立檔案夾.py': 'copy'}  # 對應檔案的處理方式
fid = r'C:\Users\24955\PycharmProjects\日常\日常測試小活動'  # 把檔案移動到或複制到對應的檔案夾中
filenames = ('檔案删除.py', '建立檔案夾.py')  # 進行操作的檔案名稱
# os.chdir(fid)  # 實作檔案删除時需要定位到指定檔案夾,否則預設檔案夾為目前程式所在檔案夾
augmented_move(fid, *filenames, verbose=True, **specific)
           

結果展示

Python實作對檔案的批量移動、複制、删除等前沿代碼實作結果展示