{
{'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'}}
}
如何更改城市2中人员的年龄?
我的问题的第二部分是在这种情况下,在Python中哪种数据结构最相关
答案 0 :(得分:4)
您最好使用字典列表,并将age
设为整数:
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
但是数据方案很奇怪(如果我们有两个人来自一个城市,那该怎么办?我们需要更改哪个年龄段?)