以下是一个检查并提取两个独立文件夹内重复文件的Python代码示例:

import os
import filecmp
import shutil

def find_duplicate_files(folder1, folder2):
    # 获取两个文件夹中的所有文件
    files1 = get_all_files(folder1)
    files2 = get_all_files(folder2)
    
    # 初始化一个列表来存储重复文件
    duplicate_files = []
    
    # 遍历文件夹1中的所有文件
    for file1 in files1:
        # 检查文件是否存在于文件夹2中
        for file2 in files2:
            if filecmp.cmp(file1, file2):
                # 如果文件相同,则将其添加到重复文件列表中
                duplicate_files.append(file1)
                break
    
    return duplicate_files

def get_all_files(folder):
    # 初始化一个列表来存储所有文件
    all_files = []
    
    # 遍历文件夹中的所有文件和子文件夹
    for root, dirs, files in os.walk(folder):
        for file in files:
            # 获取文件的完整路径
            file_path = os.path.join(root, file)
            # 将文件路径添加到列表中
            all_files.append(file_path)
    
    return all_files

def move_duplicate_files(duplicate_files, destination_folder):
    # 创建目标文件夹(如果不存在)
    if not os.path.exists(destination_folder):
        os.makedirs(destination_folder)
    
    # 将重复文件移动到目标文件夹中
    for file in duplicate_files:
        # 获取文件名
        file_name = os.path.basename(file)
        # 构建目标文件路径
        destination_path = os.path.join(destination_folder, file_name)
        # 将文件移动到目标文件夹中
        shutil.move(file, destination_path)

# 两个独立文件夹的路径
folder1 = '/path/to/folder1'
folder2 = '/path/to/folder2'

# 查找重复文件
duplicate_files = find_duplicate_files(folder1, folder2)

# 将重复文件移动到指定文件夹
destination_folder = '/path/to/duplicate_files'
move_duplicate_files(duplicate_files, destination_folder)

请将/path/to/folder1/path/to/folder2替换为实际的文件夹路径,将/path/to/duplicate_files替换为希望将重复文件移动到的文件夹路径。该代码将遍历两个文件夹中的所有文件,并将重复文件移动到指定的目标文件夹中

我需要一个检查并提取两个独立文件夹内重复文件的python代码

原文地址: http://www.cveoy.top/t/topic/hMpk 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录