debugging 使用python分离本地驱动器上的文件

qf9go6mv  于 2023-01-13  发布在  Python
关注(0)|答案(1)|浏览(122)

我有几个图像/文件在我的计算机上。所有这些都像这样开始1214455. jpeg每个图像是猫或狗。数字是一个序列号,可以在数据库中找到。我想分开猫和狗的图像,并将它们放置到两个单独的文件夹中。每个图像都有一个名称,这是相同的序列号。我希望能够使用一个序列号/名称的元组作为字符串来找到猫和狗的名称。然后将它们分开。

source_dir = "C:\\     \\file1"

destination_dir = (
    "C:\\       cats"
)

destination_dir = (
    "C:\\       dogs"
)

file_names = os.listdir(source_dir)

files = os.listdir(source_dir)

output=("123344", "345566", "8888887")

for file_name_i in files:
    # for file_name_i in os.listdir(current_dir):  # to search in sub folders
    # if the file starts with a number as string in the list, place in cancer folder if not place in health
    if os.path.join(source_dir, file_name_i).startswith(output):

        shutil.move(os.path.join(source_dir, file_name_i), destination_dir, "cats")

    else:
        shutil.move(os.path.join(source_dir, file_name_i), destination_dir, "dogs")

这个代码只删除了每一张图片,不能把动物分开。

gwbalxhn

gwbalxhn1#

move接受3个参数(source, destination, copy_function),并且分别传递(source, destination, copy_function="cats")copy_function="dogs"
将第三个参数保留为空(除非要使用复制函数),并分别使用f"{destination_dir}/cats"f"{destination_dir}/dogs"代替destination_dir

相关问题