我有三个列表,第一个是名单列表,第二个是词典列表,第三个是数据列表。列表中的每个位置与其他列表中的相同位置相对应。 List_1 [0]在List_2 [0]和List_3 [0]等中有相应的数据。我想将这三个列表变成字典中的字典,List_1中的值是主键。如何在保持一切顺利的同时做到这一点?连接词典
Q
连接词典
6
A
回答
13
>>> a = [1,2,3]
>>> b = [4,5,6]
>>> c = [7,8,9]
>>> dict(zip(a, zip(b, c)))
{1: (4, 7), 2: (5, 8), 3: (6, 9)}
对zip
更多信息,请参见documentation。
正如下面的lionbest所指出的,如果您的输入数据很大,您可能需要查看itertools.izip()
。 izip
与zip
的功能基本相同,但是它创建迭代器而不是列表。这样,您在创建字典之前不会创建大型临时列表。
1
的Python 3:
combined = {name:dict(data1=List_2[i], data2=List_3[i]) for i, name in enumerate(List_1)}
的Python 2.5:
combined = {}
for i, name in enumerate(List_1):
combined[name] = dict(data1=List_2[i], data2=List_3[i])
0
如果这些东西事项的顺序,你不应该使用字典。根据定义,它们是无序的。你可以使用many ordered_dictionary implementations之一,或等待python 2.7或3.1,它将在集合模块中包含一个有序的字典实现。
相关问题
- 1. 使用空值连接词典
- 2. Clojure词典词典
- 3. Django模型 - 将词组链接到词典/词典中的单个词
- 4. Python:词典中的词典?
- 5. Marklogic值词典和单词词典
- 6. 字典词典
- 7. 经典ASP连接
- 8. 轻松构建一个词典或词典的词典
- 9. 词典
- 10. 词典API(词法)
- 11. 结合词典的两个词典(Python)
- 12. 转换词典的词典串
- 13. 在Python中更新词典词典
- 14. 不能在词典中使用词典
- 15. 连接谓词无效(SQL0338)
- 16. DBpedia SPARQL和谓词连接
- 17. C#接口和通用词典
- 18. 词频与词典理解
- 19. 词典到Python的字典
- 20. 查询字典词典?
- 21. Python中的字典词典!
- 22. 清除词典的字典
- 23. python词典的字典
- 24. 字典词典雨燕
- 25. 合并字典的词典
- 26. C#词典中的字典
- 27. 使用词典
- 28. flex词典dataProvider?
- 29. 词典和DotLiquid
- 30. VBA-excel词典
如果a,b,c会很大,我推荐从itertools模块中使用izip。 – Arpegius 2009-08-05 13:01:48