我需要初始化一个字典以启动列表中元素的聚类模型,然后在进行聚类时,我将按元素的索引合并这些元素,但随后需要显示列表中的字符串清单。因此,我考虑过制作字典并在每次将它们聚类时合并这些值。
假设我有以下列表:
fileList = ["doc1", "doc2", "doc3", "doc4", "doc5"]
我的想法是从中创建一个字典,将索引作为键,将字符串作为值:
fileDict = {0: ["doc1"], 1: ["doc2"], 2: ["doc3"], 3: ["doc4"], 4: ["doc5"]}
然后在集群过程之后,我可以更改键的名称并打印:
clustersDict = {1: ["doc1", "doc2", "doc3"], 2: ["doc4", "doc5"]}
现在,我尝试的是:
clustersDict = dict.fromkeys([i for i in range(len(listFiles)), name for name in listFiles])
问题是,它对每个键都附加了整个文件列表,而不仅仅是一个文件,我尝试使用索引I,但是它显然表示未定义,而且我真的不知道如何继续前进,因为Python的新手。
谢谢!
最佳答案
可以将函数map
与lambda
函数一起使用:
dict(enumerate(map(lambda x: [x], fileList)))