我有一个像这样的字典列表
a = [{'name': 'analyst21', 'id': 1, 'data': 'the process data3'}, {'name': 'analyst2', 'id': 2, 'data': 'process data2'}, {'name': 'analyst3', 'id': 3, 'data': 'process data3'}]
我想将其转换为字典
必填输出:
a = {{'name': 'analyst21', 'id': 1, 'data': 'the process data3'}, {'name': 'analyst2', 'id': 2, 'data': 'process data2'}, {'name': 'analyst3', 'id': 3, 'data': 'process data3'}}
我知道dict需要键值对。还有其他方法使之成为可能。是我的问题是错误的。得到了一些反对票。我只希望列表数据包含在此{}中。我将这些结果用于进一步处理。
答案 0 :(得分:3)
Python dict is key-value structure。您所需的输出不是字典-字典必须同时具有键和相应的值(或为空)。如果要将字典列表转换为字典,请选择某种可哈希键(请注意,字典本身不可哈希,因此不能将普通字典用作键!)并将其用作字典键。这是您如何执行此操作的示例:
a = [{'name': 'analyst21', 'id': 1, 'data': 'the process data3'},
{'name': 'analyst2', 'id': 2, 'data': 'process data2'},
{'name': 'analyst3', 'id': 3, 'data': 'process data3'}]
b = {d['name']: d for d in a}
b
将返回一个字典:
{'analyst2': {'data': 'process data2', 'id': 2, 'name': 'analyst2'},
'analyst21': {'data': 'the process data3', 'id': 1, 'name': 'analyst21'},
'analyst3': {'data': 'process data3', 'id': 3, 'name': 'analyst3'}}