在 Python 中复制多个文件

新手上路,请多包涵

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

原文由 hidayat 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 280
2 个回答

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

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

 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)

原文由 GreenMatt 发布,翻译遵循 CC BY-SA 4.0 许可协议

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

 for filename in glob.glob(os.path.join(source_dir, '*.*')):
    shutil.copy(filename, dest_dir)

原文由 Steven 发布,翻译遵循 CC BY-SA 2.5 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题