【发布时间】:2022-01-12 17:26:20
【问题描述】:
从具有多个列表的给定列表中,我需要将它们放入字典中。这是列表列表:
my_table = [["Account Manager", "Name", "BP", "Contact", "Quote Name", "Type", "Status", "Total"],
["bubble", "kwlak", "5677", "conn", "987", "butter", "fish", "fill", "stat", "total"],
["rose", "kwlak", "5677", "conn", "987", "butter", "fish", "fill", "stat", "total"],
["purple", "kwlak", "5677", "conn", "987", "butter", "fish", "fill", "stat", "total"],
["dark", "kwlak", "5677", "conn", "987", "butter", "fish", "fill", "stat", "total"],
["star", "kwlak", "5677", "conn", "987", "butter", "fish", "fill", "stat", "total"],
["asmr", "kwlak", "5677", "conn", "987", "butter", "fish", "fill", "stat", "total"],]
我尝试了这段代码,它正确地给了我想要的键(第一个列表 (["Account Manager", "Name", "BP", "Contact", "Quote Name", "Type", "Status", "Total"]))作为键,但它只给了我所有列表中的另一个列表作为值。
代码:
dict_from_table = {}
for key in my_table[0]:
for value in my_table:
dict_from_table[key] = value
print(dict_from_table)
它给我的结果是:
{'Account Manager': ['asmr', 'kwlak', '5677', 'conn', '987', 'butter', 'fish', 'fill', 'stat', 'total'], 'Name': ['asmr', 'kwlak', '5677', 'conn', '987', 'butter', 'fish', 'fill', 'stat', 'total'], 'BP': ['asmr', 'kwlak', '5677', 'conn', '987', 'butter', 'fish', 'fill', 'stat', 'total'], 'Contact': ['asmr', 'kwlak', '5677', 'conn', '987', 'butter', 'fish', 'fill', 'stat', 'total'], 'Quote Name': ['asmr', 'kwlak', '5677', 'conn', '987', 'butter', 'fish', 'fill', 'stat', 'total'], 'Type': ['asmr', 'kwlak', '5677', 'conn', '987', 'butter', 'fish', 'fill', 'stat', 'total'], 'Status': ['asmr', 'kwlak', '5677', 'conn', '987', 'butter', 'fish', 'fill', 'stat', 'total'], 'Total': ['asmr', 'kwlak', '5677', 'conn', '987', 'butter', 'fish', 'fill', 'stat', 'total']}
没关系,但它只是所有列表中的最后一个列表。
我希望输出使用相同的键,但要给我大列表中的每个列表。所以第一次使用列表 1 的键,然后使用列表 2 的相同键 ...
【问题讨论】:
-
字典中的每一个键都必须是唯一的,所以每次你给一个键赋值时,这个值都会被新值替换。
标签: python list dictionary