使用Python递归复制目录中所有具有某个扩展名的文件,可以按以下步骤操作:
os
和shutil
模块:import os
import shutil
copy_files
,接收目录路径source_dir
、目标目录路径dest_dir
和目标文件的扩展名extension
作为参数:def copy_files(source_dir, dest_dir, extension):
# 遍历源目录中的文件和文件夹
for file_name in os.listdir(source_dir):
# 构建文件/文件夹的完整路径
source_path = os.path.join(source_dir, file_name)
dest_path = os.path.join(dest_dir, file_name)
# 判断是否为目标文件夹
if os.path.isdir(source_path):
# 如果是文件夹,递归调用函数
copy_files(source_path, dest_path, extension)
elif os.path.isfile(source_path) and source_path.endswith(extension):
# 如果是目标文件类型,进行复制
shutil.copy(source_path, dest_dir)
source_directory = "/path/to/source_directory"
destination_directory = "/path/to/destination_directory"
file_extension = ".txt"
copy_files(source_directory, destination_directory, file_extension)
这样,递归复制源目录中所有具有指定扩展名的文件到目标目录中,包括子文件夹中的文件。如果要复制其他扩展名的文件,只需修改file_extension
的值即可。
注意:以上代码示例中,并未提到任何具体的腾讯云产品。如需在腾讯云上运行代码,可以使用腾讯云的云服务器(CVM)实例,并在实例上安装配置Python环境。腾讯云提供了多种云服务产品,可以根据实际需求选择适合的产品。
领取专属 10元无门槛券
手把手带您无忧上云