我有一个脚本,可以将文件从一个文件夹结构复制到另一个具有不同结构的文件夹。
ex. Folder 1
c.txt
d.txt
subdir1
a.txt
b.txt
脚本以这种格式将文件/目录从文件夹1复制到文件夹2(文件夹2具有不同的结构)
Folder 2
subdir2
c.txt
d.txt
subdir1
a.txt
b.txt
在html" target="_blank">文件夹2中,我可以创建自己的文件,如new1。txt,new2。txt。创建新文件后,文件夹2的结构如下:
Folder 2
new1.txt
new2.txt
subdir2
c.txt
d.txt
subdir1
a.txt
b.txt
现在我需要比较Folder1和Folder2的目录内容。我正在使用filecmp。用于比较目录内容的dircmp。filecmp。这两个文件夹上的dircmp将为我提供subdir2、subdir2/c.txt、subdir2/d.txt作为新目录,以及带有new1的新文件。txt和new2。txt。但实际上我只创建了new1。txt和new2。txt作为新文件,其他文件仅从一个文件夹复制到另一个文件夹。
作为一个新文件,我只需要new1。txt和new2。结果是。你知道我该怎么做吗。我正在用python编写这段代码
蒂姆是对的,os。walk
是解决方案:
>>> path = r'D:\DATA\FP12210\My Documents\Temp\Python'
>>> import os
>>> files1 = []
>>> for root, dirs, files in os.walk(os.path.join(path, 'Folder 1')):
files1.extend(files)
>>> files1
['c.txt', 'd.txt', 'a.txt', 'b.txt']
>>> files2 = []
>>> for root, dirs, files in os.walk(os.path.join(path, 'Folder 2')):
files2.extend(files)
>>> files2
['new1.txt', 'new2.txt', 'a.txt', 'b.txt', 'c.txt', 'd.txt']
然后您可以区分您的输出:
>>> print [f for f in files2 if f not in files1]
['new1.txt', 'new2.txt']
问题内容: 提前致谢。感谢您的帮助。 我想比较两个相同类型和结构的任意JToken(NewtonSoft的Json.Net)。 主要目标 是能够使用此方法对两个Json字符串进行排序,以便即使开始时它们具有相同的数据,但顺序不同,最后它们是两个完全相同的字符串。因此排序标准并不重要,重要的是该标准始终相同。并且应该考虑每个小数据元素。 JToken可以是以下几种类型之一:。我没有考虑比较。 获得一
问题内容: 我需要比较两个CSV文件并在第三个CSV文件中打印出差异。在我的情况下,第一个CSV是一个名为old.csv的哈希表的旧列表,第二个CSV是包含新旧哈希表的新哈希表。 这是我的代码: 第三个文件是旧文件的副本,而不是更新文件。怎么了 ?我希望你能帮助我,非常感谢! PS:我不想使用diff 问题答案: 问题在于您正在将中的每一行与中的同一行进行比较。只要一个文件中有多余的一行,您就会发
问题内容: 假设我有两个表,表A和表B,并且我想比较某个列。 例如, 表A包含以下列:IP,主机,应用 表B具有以下列:IP,数据中心,服务器,模型,最后更新 如何比较两个表之间的IP列以获取差异? 我知道表是否具有相同的列,我可以使用并集和“减号”来获取差异,但是我无法找出表具有不同列的方式。 谢谢! 问题答案: 这将输出两个表中不匹配行的所有列,并且在任一侧都有NULL。
我在Spring有一个项目,我必须读两本。txt文件,一个有许多行,另一个是控制文件,其中包含应从第一个文件读取的行数。我知道我必须使用分区来处理这些文件,因为第一个文件非常大,我需要对其进行分区,并能够在失败时重新启动,但我不知道读者应该如何处理这些文件,因为两个文件的行宽度不同。没有一个文件的行中有标题或分隔符,因此我必须根据主要在第一行中的范围来获取字段<我的一个疑问是,我是否应该在同一个读
null 但是,如果清单2为应该返回false(因为字符串d出现的顺序混乱)