要将不同文件夹中的相同.csv
文件复制到一个单独的文件夹中,你可以使用Python的os
和shutil
模块来实现这个功能。以下是一个简单的脚本,它会遍历指定目录下的所有子文件夹,查找所有的.csv
文件,并将它们复制到一个新的目标文件夹中。
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
文件没有被复制,可能的原因包括:
.csv
文件正在被其他程序使用,可能会因为文件锁定而无法复制。source_dir
和target_dir
变量设置正确,指向正确的文件夹路径。解决这些问题的方法包括:
.csv
文件的其他程序。参考链接:
请注意,这个脚本会将所有找到的.csv
文件复制到目标文件夹,如果目标文件夹中已经存在同名文件,shutil.copy2
会覆盖原有文件。如果你希望避免这种情况,可以在复制前检查目标文件夹中是否已经存在同名文件。
领取专属 10元无门槛券
手把手带您无忧上云