我有一个这样的清单:
[[29.3066, 47.9155, 1, "I"], [29.3066, 47.9161, 3, "N"], [29.3309, 47.938, 100, "S"]]
我想用dict转换它:
[{"pk": 1, "fields": {"latitude": 29.3066, "longitude": 47.9155, "name": "I"}}, {"pk": 3, "fields": {"latitude": 29.3066, "longitude": 47.1961, "name": "N"}}..and so on]
如何实现这一目标?
答案 0 :(得分:2)
>>> lst = [[29.3066, 47.9155, 1, "I"], [29.3066, 47.9161, 3, "N"], [29.3309, 47.938, 100, "S"]]
>>> [{'pk': pk, 'fields': {'latitude': lat, 'longitude': lng, 'name': name}}
... for lat, lng, pk, name in lst]
[{'pk': 1, 'fields': {'latitude': 29.3066, 'name': 'I', 'longitude': 47.9155}},
{'pk': 3, 'fields': {'latitude': 29.3066, 'name': 'N', 'longitude': 47.9161}},
{'pk': 100, 'fields': {'latitude': 29.3309, 'name': 'S', 'longitude': 47.938}}]