如何在Python中更改嵌套字典中键的值

如何在Python中更改嵌套字典中键的值,python,list,dictionary,data-structures,Python,List,Dictionary,Data Structures,如何改变城市2的人的年龄 我问题的第二部分是,在Python中,在这种情况下,哪个数据结构最相关您最好使用dict列表,并将age设置为整数: 但是数据结构很奇怪,如果我们有两个来自同一个城市的人——我们需要改变哪个年龄段呢?这不是一本字典。这样更好。但是,您只是想修改数据[1]中人员的年龄,还是还需要查找带有“city”:2的dict,以防您不知道其在列表中的位置?需要查找带有“city”:2的dict首先您还没有向我们展示您的编码尝试。我没有投反对票,但这可能是你的问题获得这么多反对票的主要

如何改变城市2的人的年龄


我问题的第二部分是,在Python中,在这种情况下,哪个数据结构最相关

您最好使用dict列表,并将age设置为整数:


但是数据结构很奇怪,如果我们有两个来自同一个城市的人——我们需要改变哪个年龄段呢?

这不是一本字典。这样更好。但是,您只是想修改数据[1]中人员的年龄,还是还需要查找带有“city”:2的dict,以防您不知道其在列表中的位置?需要查找带有“city”:2的dict首先您还没有向我们展示您的编码尝试。我没有投反对票,但这可能是你的问题获得这么多反对票的主要原因。@Barny请不要用提供的答案修复你问题的代码,否则这个问题对未来的用户毫无意义。@PM2Ring谢谢,更新了我的代码
{
 {'city':1 ,'person':{'name': 'John', 'age': '27'}},
 {'city':2 ,'person':{'name': 'Marie', 'age': '22'}},
 {'city':3 ,'person':{'name': 'Luna', 'age': '24'}},
 {'city':4 ,'person':{'name': 'Peter', 'age': '29'}}
}
data = [
 {'city':1, 'person': {'name': 'John', 'age': 27}},
 {'city':2, 'person': {'name': 'Marie', 'age': 22}},
 {'city':3, 'person': {'name': 'Luna', 'age': 24}},
 {'city':4, 'person': {'name': 'Peter', 'age': 29}}
]
person_by_city_id = {item['city_id']: item['person'] for item in data}
person_by_city_id[2]['age'] = 23