【发布时间】:2022-01-17 10:09:16
【问题描述】:
我正在尝试从列表中获取字典。首先,我有一个列表列表,并使用下面的代码从列表列表中获得一个列表:
y_table = [["Account Manager", "Name", "BP", "Contact", "Quote Name", "Type", "Status", "Total"],
["bubble", "kwlak", "5677", "conn", "987", "butter", "fish", "fill"],
["rose", "kwlak", "5677", "conn", "987", "butter", "fish", "fill"],
["purple", "kwlak", "5677", "conn", "987", "butter", "fish", "fill"],
["dark", "kwlak", "5677", "conn", "987", "butter", "fish", "fill"],
["star", "kwlak", "5677", "conn", "987", "butter", "fish", "fill"],
["asmr", "kwlak", "5677", "conn", "987", "butter", "fish", "fill"],]
flat_list = []
for sublist in my_table:
for item in sublist:
flat_list.append(item)
print(flat_list)
现在我的列表看起来像这样:
['Account Manager', 'Name', 'BP', 'Contact', 'Quote Name', 'Type', 'Status', 'Total', 'bubble', 'kwlak', '5677', 'conn', '987', 'butter', 'fish', 'fill', 'rose', 'kwlak', '5677', 'conn', '987', 'butter', 'fish', 'fill', 'purple', 'kwlak', '5677', 'conn', '987', 'butter', 'fish', 'fill', 'dark', 'kwlak', '5677', 'conn', '987', 'butter', 'fish', 'fill', 'star', 'kwlak', '5677', 'conn', '987', 'butter', 'fish', 'fill', 'asmr', 'kwlak', '5677', 'conn', '987', 'butter', 'fish', 'fill']
现在我想从这个列表中得到一个字典,我希望它最后看起来像这样:
Table: [{'Account Manager': 'bubble', 'Name': 'kwlak', 'BP': '5677', 'Contact': 'conn', 'Quote Name': '987', 'Type': 'butter', 'Status': 'fish', 'Total': 'fill'},
{'Account Manager': 'rose', 'Name': 'kwlak', 'BP': '5677', 'Contact': 'conn', 'Quote Name': '987', 'Type': 'butter', 'Status': 'fish', 'Total': 'fill'},
{'Account Manager': 'purple', 'Name': 'kwlak', 'BP': '5677', 'Contact': 'conn', 'Quote Name': '987', 'Type': 'butter', 'Status': 'fish', 'Total': 'fill'},
{'Account Manager': 'dark', 'Name': 'kwlak', 'BP': '5677', 'Contact': 'conn', 'Quote Name': '987', 'Type': 'butter', 'Status': 'fish', 'Total': 'fill'},
{'Account Manager': 'star', 'Name': 'kwlak', 'BP': '5677', 'Contact': 'conn', 'Quote Name': '987', 'Type': 'butter', 'Status': 'fish', 'Total': 'fill'},
{'Account Manager': 'asmr', 'Name': 'kwlak', 'BP': '5677', 'Contact': 'conn', 'Quote Name': '987', 'Type': 'butter', 'Status': 'fish', 'Total': 'fill'}]
我试图运行这段代码来获取这本字典,但它不起作用:
header_my_table = flat_list[0]
my_table.remove(flat_list[0])
my_table_dict = dict(zip(header_my_table, flat_list))
print(my_table_dict)
【问题讨论】:
-
您正在调用您想要字典的输出,但向我们展示了一个 dict 列表。这令人困惑。
-
如果你使用 pandas,list(pd.DataFrame(y_table[1:], columns=y_table[0]).T.to_dict().values())
-
对不起,我一直在搞这个,我很困惑。我需要它作为我之前写的字典列表。我想我可能会在我根据需要设置字典后最后对其进行格式化。关于如何得到我的结果的任何想法?
标签: python python-3.x list dictionary