我是Python中的新成员,并且想要执行任务...我需要比较两个文件夹dirfolder1和dirfolder2中的文件夹名称...比较它们中的文件夹以及它们是否匹配。 ..复制文件和子文件夹内匹配的文件夹...找到匹配的文件夹,然后复制文件和子文件夹
感谢您的帮助。
Daddih。
我是Python中的新成员,并且想要执行任务...我需要比较两个文件夹dirfolder1和dirfolder2中的文件夹名称...比较它们中的文件夹以及它们是否匹配。 ..复制文件和子文件夹内匹配的文件夹...找到匹配的文件夹,然后复制文件和子文件夹
感谢您的帮助。
Daddih。
你可以做类似如下:
import os, shutil
dir1 = r'/path/to/dir/1'
dir2 = r'/path/to/dir/2'
copy_dest = r'/path/to/copy/dirs/to'
dir1_folders = [dir for dir in os.listdir(dir1) if os.path.isdir(os.path.join(dir1, dir))]
dir2_folders = [dir for dir in os.listdir(dir2) if os.path.isdir(os.path.join(dir2, dir))]
for dir in dir1_folders:
if dir in dir2_folders:
shutil.copytree(os.path.join(dir1, dir), os.path.join(copy_dest, dir))
基本上,走过每个目录创建其子目录的列表,对它们进行比较,并为比赛,复制它们(使用copytree,以防有任何子目录)到第三个位置。
啊,所以你想复制_content_从dir1到dir2?基本上合并文件夹? – aravenel 2012-02-23 19:28:15
嗨Aravenel,感谢您的输入代码的作品....我们可以像从dir1复制到dir2的东西,而不是必须复制到另一个文件夹...非常感谢,我很欣赏....认为这会对我来说,改善第一部分是一个很好的起点,我有.... thanx :-) – Dan 2012-02-23 19:29:11
是的,这是想法...可能是我dint把它正确....以及它如何处理窗口的问题如果我们在目录中有类似的子文件夹 – Dan 2012-02-23 19:30:29
你的意思只是在最高层?例如,你是否想将dirfolder1/a/b复制到dirfolder2/c/b? – ABS 2012-02-23 18:26:40
你尝试过什么吗?显示一些代码和解释你在哪里卡住 – 2012-02-23 18:33:18
@ABS他们在不同的驱动器.... @ FC已经尝试了一些东西,但我有什么只是在每个文件夹中显示子文件夹 – Dan 2012-02-23 18:34:55