现在,我的.json文件中的一个对象如下所示:
{
"id": 1,
"name": "Bulbasaur",
"type_1": "Grass",
"type_2": "Poison",
"primary_color": "Green",
"height": 0.7,
"weight": 6.9,
"hp": 45,
"attack": 49,
"defense": 49,
"speed": 45,
"can_evolve": "TRUE",
"evolves_from": "",
"final_evolution": "FALSE",
"mega_evolution": "FALSE"
},我想要一种将上面的json的多个副本(900份)转换成这样的方法:
{
"1": [
{
"name": "Bulbasaur",
"type_1": "Grass",
"type_2": "Poison",
"primary_color": "Green",
"height": 0.7,
"weight": 6.9,
"hp": 45,
"attack": 49,
"defense": 49,
"speed": 45,
"can_evolve": "TRUE",
"evolves_from": "",
"final_evolution": "FALSE",
"mega_evolution": "FALSE"
}
],
"Bulbasaur": [
{
"id": "1",
"type_1": "Grass",
"type_2": "Poison",
"primary_color": "Green",
"height": 0.7,
"weight": 6.9,
"hp": 45,
"attack": 49,
"defense": 49,
"speed": 45,
"can_evolve": "TRUE",
"evolves_from": "",
"final_evolution": "FALSE",
"mega_evolution": "FALSE"
}
]
}实际上,我只需要找到一种方法,将对象的键设置为同一个对象的值,我就可以设置好了。
谢谢!
发布于 2022-10-17 16:27:18
使用dict.fromkeys()
original = {
"id": 1,
"name": "Bulbasaur",
"type_1": "Grass",
"type_2": "Poison",
"primary_color": "Green",
"height": 0.7,
"weight": 6.9,
"hp": 45,
"attack": 49,
"defense": 49,
"speed": 45,
"can_evolve": "TRUE",
"evolves_from": "",
"final_evolution": "FALSE",
"mega_evolution": "FALSE"
}
result = dict.fromkeys((original['id'], original['name']), original)result是:
{1: {'attack': 49,
'can_evolve': 'TRUE',
'defense': 49,
'evolves_from': '',
'final_evolution': 'FALSE',
'height': 0.7,
'hp': 45,
'id': 1,
'mega_evolution': 'FALSE',
'name': 'Bulbasaur',
'primary_color': 'Green',
'speed': 45,
'type_1': 'Grass',
'type_2': 'Poison',
'weight': 6.9},
'Bulbasaur': {'attack': 49,
'can_evolve': 'TRUE',
'defense': 49,
'evolves_from': '',
'final_evolution': 'FALSE',
'height': 0.7,
'hp': 45,
'id': 1,
'mega_evolution': 'FALSE',
'name': 'Bulbasaur',
'primary_color': 'Green',
'speed': 45,
'type_1': 'Grass',
'type_2': 'Poison',
'weight': 6.9}}https://stackoverflow.com/questions/74099941
复制相似问题