我有两个来自同一系统但在不同时间的文件系统,转储并转换为带有
的字典"FileName":MD5_Hash
我进一步将它们转换为集合并使用
SetA = set(dictA.items())
SetB.difference(SetA)
查找新文件和已更改文件。这是正确的方法吗?操作是否比较具有相同名称的文件的MD5值?
如果这是正确的方法,我该如何验证输出? (我计划制作一个包含大约100个文件的小文件系统,并手动更改一些并测试程序。)
谢谢!
答案 0 :(得分:2)
将dict
转换为set
时,您只会获得密钥:
>>> x
{'2': 4, '5': 2}
>>> set(x)
set(['2', '5'])
因为你也想要按键,你可以这样做:
>>> as_set = set(x.iteritems())
>>> as_set
set([('5', 2), ('2', 4)])
>>> dict(as_set)
{'2': 4, '5': 2}
设置差异功能将适用于此。