Python实现批量找出两个文件夹中同名文件

要实现两个目录中同名文件的匹配并输出这些匹配文件的名称,可以使用以下Python脚本:

脚本:

python 复制代码
import os

# 定义两个文件夹路径
folder_A = r'I:\mydesk\file1'
folder_B = r'I:\mydesk\file2'

# 获取两个文件夹中的文件名
files_A = set(os.listdir(folder_A))
files_B = set(os.listdir(folder_B))

# 找到两个文件夹中同名的文件
common_files = files_A.intersection(files_B)

# 输出同名文件
if common_files:
    print("匹配到的同名文件如下:")
    for filename in common_files:
        print(f"File_A: {os.path.join(folder_A, filename)}")
        print(f"File_B: {os.path.join(folder_B, filename)}")
        print()
else:
    print("没有匹配到同名文件。")

脚本说明:

  1. 读取文件名
    • 使用 os.listdir(folder_A)os.listdir(folder_B) 获取两个目录中的文件名列表。
  2. 查找同名文件
    • 使用 setintersection 方法快速找到两个目录中相同的文件名。
  3. 输出路径
    • 使用 os.path.join(folder, filename) 构建完整路径并打印。

输出示例:

假设在两个目录中有文件名 data1.txtdata2.txt 同名,输出将如下:

复制代码
匹配到的同名文件如下:
File_A: I:\mydesk\file1\data1.txt
File_B: I:\mydesk\file2\data1.txt

File_A: I:\mydesk\file1\data2.txt
File_B: I:\mydesk\file2\data2.txt

使用方法:

  1. 将脚本保存为 .py 文件。
  2. 确保文件夹路径存在,且路径内的文件名没有特殊符号。
  3. 运行脚本,匹配的同名文件及其路径将被输出。
相关推荐
LawrenceLan37 分钟前
Flutter 零基础入门(十一):空安全(Null Safety)基础
开发语言·flutter·dart
txinyu的博客1 小时前
解析业务层的key冲突问题
开发语言·c++·分布式
码不停蹄Zzz1 小时前
C语言第1章
c语言·开发语言
行者962 小时前
Flutter跨平台开发在OpenHarmony上的评分组件实现与优化
开发语言·flutter·harmonyos·鸿蒙
阿蒙Amon2 小时前
C#每日面试题-Array和ArrayList的区别
java·开发语言·c#
SmartRadio2 小时前
ESP32添加修改蓝牙名称和获取蓝牙连接状态的AT命令-完整UART BLE服务功能后的完整`main.c`代码
c语言·开发语言·c++·esp32·ble
且去填词2 小时前
Go 语言的“反叛”——为什么少即是多?
开发语言·后端·面试·go
知乎的哥廷根数学学派3 小时前
基于生成对抗U-Net混合架构的隧道衬砌缺陷地质雷达数据智能反演与成像方法(以模拟信号为例,Pytorch)
开发语言·人工智能·pytorch·python·深度学习·机器学习
yeziyfx3 小时前
kotlin中 ?:的用法
android·开发语言·kotlin
charlie1145141914 小时前
嵌入式的现代C++教程——constexpr与设计技巧
开发语言·c++·笔记·单片机·学习·算法·嵌入式