我对分组具有相同内容但文件名不同的文件有疑问。我调查了filecmp.cmp()
,但是一次只比较两个文件。
这个想法是要变成这样的事情:
file1: [a,b,c,d,e,f,g,h,i]
file2: [a,b,c,d,e,f,g,h,i]
file3: [a,b,c,d,e,f,g,h,i]
file4: [a,b,c,d,e,f,g,h]
file5: [a,b,c,d,e,f,g,h]
file6: [a,b,c,d,e]
进入:
file(1,2,3): [a,b,c,d,e,f,g,h,i]
file(4,5): [a,b,c,d,e,f,g,h]
file(6): [a,b,c,d,e]
我想我大约有1800个.txt文件,但是只有大约20个唯一文件。我想创建一个列表,一个字典或一个显示分组的数据框。
任何帮助表示赞赏。谢谢!
一种经典的方法是使用字典。首先,编译目录中所有文件名的列表,并将其存储到名为file_names的列表中。然后:
filedict={}
for name in file_names:
file=open(name,"r")
filecontents=file.read()
if filecontents in filedict:
filedict[filecontents].append(name)
else:
filedict[filecontents]=[]
filedict[filecontents].append(name)
该词典的每个值都是具有相同文本内容的文件列表。字典的键将是文件的字符串。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句