首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python:将不同文件夹(每个文件夹都有一个.csv文件)中相同的.csv文件复制到单个文件夹中

要将不同文件夹中的相同.csv文件复制到一个单独的文件夹中,你可以使用Python的osshutil模块来实现这个功能。以下是一个简单的脚本,它会遍历指定目录下的所有子文件夹,查找所有的.csv文件,并将它们复制到一个新的目标文件夹中。

代码语言:txt
复制
import os
import shutil

# 源文件夹路径,这里假设我们要搜索的是当前目录下的所有子文件夹
source_dir = '.'

# 目标文件夹路径,这里假设我们要将.csv文件复制到名为"csv_files"的文件夹中
target_dir = 'csv_files'

# 确保目标文件夹存在
if not os.path.exists(target_dir):
    os.makedirs(target_dir)

# 遍历源文件夹及其所有子文件夹
for root, dirs, files in os.walk(source_dir):
    for file in files:
        # 检查文件是否为.csv文件
        if file.endswith('.csv'):
            # 构建源文件的完整路径
            source_file_path = os.path.join(root, file)
            # 构建目标文件的完整路径
            target_file_path = os.path.join(target_dir, file)
            # 复制文件到目标文件夹
            shutil.copy2(source_file_path, target_file_path)
            print(f'Copied {source_file_path} to {target_file_path}')

在运行上述脚本之前,请确保你有足够的权限来读取源文件夹中的文件,并且有权限在目标文件夹中写入文件。

如果你遇到了问题,比如某些.csv文件没有被复制,可能的原因包括:

  1. 权限问题:确保脚本运行的用户有权限读取源文件和写入目标文件夹。
  2. 文件锁定:如果.csv文件正在被其他程序使用,可能会因为文件锁定而无法复制。
  3. 路径问题:确保source_dirtarget_dir变量设置正确,指向正确的文件夹路径。

解决这些问题的方法包括:

  • 检查并修改文件夹和文件的权限。
  • 关闭正在使用.csv文件的其他程序。
  • 仔细检查脚本中的路径设置,确保它们指向正确的位置。

参考链接:

请注意,这个脚本会将所有找到的.csv文件复制到目标文件夹,如果目标文件夹中已经存在同名文件,shutil.copy2会覆盖原有文件。如果你希望避免这种情况,可以在复制前检查目标文件夹中是否已经存在同名文件。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的合辑

领券