写一段Python代码,将文件批量转到指定文件夹
时间: 2024-10-15 07:18:26 浏览: 24
当然可以。在Python中,我们可以使用`shutil`模块的`copyfile()`函数配合列表推导式来批量复制文件。假设我们有一个源目录`sourcedir`和目标目录`targetdir`,以下是相应的代码示例:
```python
import os
import shutil
# 源目录
source_dir = 'path_to_your_source_directory'
# 目标目录
target_dir = 'path_to_your_target_directory'
# 获取源目录下的所有文件(包括子目录)
all_files = [os.path.join(root, file) for root, dirs, files in os.walk(source_dir) for file in files]
# 批量复制文件到目标目录
for file_path in all_files:
# 构建新文件的目标路径
target_file_path = os.path.join(target_dir, os.path.relpath(file_path, source_dir))
# 转换为绝对路径以便复制
target_file_path = os.path.abspath(target_file_path)
try:
shutil.copy2(file_path, target_file_path) # 使用copy2保证权限信息也一同复制
except Exception as e:
print(f"Error copying {file_path}: {e}")
阅读全文