python 编写一个程序,要求用户输入一个文件夹路径和一个文件扩展名,程序需要找出该文件夹中所有该扩展名的文件,并将它们复制到新的文件夹中。
时间: 2023-06-24 17:05:40 浏览: 104
python 复制文件到指定文件夹
可以使用Python标准库中的os和shutil模块来完成这个任务。下面是一个简单的实现:
```python
import os
import shutil
def copy_files_with_extension(src_folder, dest_folder, extension):
for dirpath, dirnames, filenames in os.walk(src_folder):
for filename in filenames:
if filename.endswith(extension):
src_path = os.path.join(dirpath, filename)
dest_path = os.path.join(dest_folder, filename)
shutil.copy(src_path, dest_path)
# 测试代码
src_folder = input("请输入源文件夹路径:")
dest_folder = input("请输入目标文件夹路径:")
extension = input("请输入文件扩展名(如 .txt):")
copy_files_with_extension(src_folder, dest_folder, extension)
print("复制完成!")
```
这个程序首先通过`os.walk()`函数遍历源文件夹中的所有文件和子文件夹。然后对于每个文件,如果它的扩展名与给定的扩展名相同,就使用`shutil.copy()`函数将它复制到目标文件夹中。
注意,如果目标文件夹不存在,`shutil.copy()`函数会自动创建它。但是如果源文件夹中有多个文件名相同的文件,它们会被覆盖。如果你需要避免这种情况,可以在目标文件夹中为每个文件生成一个唯一的文件名。
阅读全文