【问题标题】:Copy files to a new directory according to file names stored in a text file with Python 3.x根据 Python 3.x 文本文件中存储的文件名将文件复制到新目录
【发布时间】:2019-11-26 10:16:36
【问题描述】:

我有一个 txt 文件,它是一些软件的配置文件。

文本文件中内容的格式是这样的:

txt1.txt:

image/icon/apple.png
image/icon/pear.png
image/icon/kiwi.png

那些 png 文件存储在 dir1 或 dir2 中,我不知道哪个在哪个。这些目录是这样的:

dir1 = "C:\\files1\\image\\icon\\"
dir2 = "C:\\files2\\image\\icon\\"

现在我想将所有 .png 文件从 dir1 或 dir2 复制到一个新文件夹。 不确定我应该遵循哪种逻辑。任何人都可以提供任何见解吗?

【问题讨论】:

  • 您希望图像在两个目录中吗?
  • @Jmonsky 嗨,不。每张图片只能出现在一个文件夹中。

标签: python file text directory copy


【解决方案1】:

将 txt1.txt 稍微改成:

apple.png
pear.png
kiwi.png

此代码应适用于任意数量的目录以检查给定文件。

import os
import shutil

fileListingFile = "txt1.txt"
directories = [
    "C:\\files1\\image\\icon\\"
    "C:\\files2\\image\\icon\\"
]
outputDir = "C:\\outdir\\image\\icon"

with open(fileListingFile, "r") as file:
    fileNames = [file.strip() for file in file.readlines()]

for directory in directories:
    for file in fileNames:
        if os.path.isfile(os.path.join(directory, file)):
            shutil.copy(os.path.join(directory, file), os.path.join(outputDir, file))

【讨论】:

    猜你喜欢
    • 2018-05-21
    • 2011-11-30
    • 2019-10-22
    • 1970-01-01
    • 2019-10-30
    • 2016-12-29
    • 1970-01-01
    • 2013-08-25
    • 1970-01-01
    相关资源
    最近更新 更多