将文件复制到另一个文件夹,避免在python中重复

问题描述

我需要你的帮助。 我是 Python 的半初学者,我想创建一个程序,允许我将文件夹 A 的内容(在本例中为照片)复制到另一个文件夹 B。 但是,文件夹 B 的内容可能已经包含文件夹 B 中的文件

所以我需要避免复制它们或之后删除重复项。 (名字就够了,不用查尺码等) 我想到了在两个嵌套的“for”循环的帮助下可以检测到相同名称的列表。我认为这不是最明智的解决方案。

你会如何将它翻译成 python?

非常感谢您的帮助。

我在网上发现:https://gist.github.com/vinovator/a2ba7306e829bf3a9010

PS:我的最终目标是创建一个带有连接到 HDD 和 SD 卡端口的 rasbperry 的盒子,只要我将 Sd 卡插入“插槽”,就可以自动保存新图片

解决方法

您好,获取每个文件夹的 path list 并将它们转换为 set,以便您发现两个文件夹之间的区别。

import glob

folderA = glob.glob("pathTofolderA")
folderB = glob.glob("pathTofolderB")

diffA = list(set(folderA) - set(folderB))
diffB = list(set(folderB) - set(folderA))

根据您正在寻找的差异,您的答案是 diffAdiffB。有关此处设置的更多信息:https://realpython.com/python-sets/#operating-on-a-set