首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在Python中复制多个文件

在Python中复制多个文件
EN

Stack Overflow用户
提问于 2010-08-03 22:54:57
回答 6查看 215.1K关注 0票数 112

如何使用Python将一个目录中的所有文件复制到另一个目录。我将源路径和目标路径作为字符串。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2010-08-04 01:59:52

您可以使用os.listdir()获取源目录中的文件,使用os.path.isfile()查看它们是否是常规文件(包括*nix系统上的符号链接),使用shutil.copy进行复制。

下面的代码只将源目录中的常规文件复制到目标目录(我假设您不希望复制任何子目录)。

代码语言:javascript
复制
import os
import shutil
src_files = os.listdir(src)
for file_name in src_files:
    full_file_name = os.path.join(src, file_name)
    if os.path.isfile(full_file_name):
        shutil.copy(full_file_name, dest)
票数 157
EN

Stack Overflow用户

发布于 2010-08-03 23:56:33

如果您不想复制整个树(包含子目录等),请使用或glob.glob("path/to/dir/*.*")获取所有文件名的列表,循环遍历列表并使用shutil.copy复制每个文件。

代码语言:javascript
复制
for filename in glob.glob(os.path.join(source_dir, '*.*')):
    shutil.copy(filename, dest_dir)
票数 37
EN

Stack Overflow用户

发布于 2010-08-03 22:57:22

看看shutil in the Python docs,特别是copytree命令。

如果目标目录已经存在,请尝试:

代码语言:javascript
复制
shutil.copytree(source, destination, dirs_exist_ok=True)
票数 22
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3397752

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档