python - 将文件复制到另一个文件夹,避免在 python 中重复
问题描述
我需要你的帮助。我是 python 的半初学者,我想创建一个程序,允许我将文件夹 A 的内容(在本例中为照片)复制到另一个文件夹 B。 但是,文件夹 B 的内容可能,已经包含文件夹 B 中的文件。
所以我需要避免复制它们或之后删除重复项。(名称就足够了,不需要检查大小等。)我想到了在两个嵌套“for”循环的帮助下可以检测到相同名称的列表。我认为这不是最聪明的解决方案。
你会如何把它翻译成python?
非常感谢你的帮助。
我在网上找到了:https ://gist.github.com/vinovator/a2ba7306e829bf3a9010
PS:我的最终目标是创建一个带有连接到 HDD 和 SD 卡端口的盒子,只要我将 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))
取决于您正在寻找答案的差异是diffA
或diffB
。有关此处设置的更多信息:https ://realpython.com/python-sets/#operating-on-a-set
推荐阅读
- io - 如何修复错误:org.apache.camel.component.file.GenericFileOperationFailedException:无法检索文件?
- python - 与上一个问题类似,但已切换到 OOP,如何让我的精灵移动?
- jquery - 如何将 html 文本转换为有组织的 json 数组?
- javascript - 为从服务返回的数据创建接口会引发错误
- javascript - 按键的值返回 JSON 对象
- shell - 用于替换空格和之间的数字的 Sed 命令:
- spring-boot - 如何暂停/恢复单个 Spring JMS 消息侦听器
- tensorflow - AssertionError:使用 predict 函数时,batch_size 必须能被正在使用的 TPU 内核数(1 vs 8)整除
- mysql - 如何处理对生成自动递增主 ID 的表的多次插入?
- c# - 没有 else 子句的单行 If 条件