【发布时间】:2018-10-31 19:11:15
【问题描述】:
关于Update a value when matched in array的进一步问题
data=[{"hostname":"a.example.com","Id":"1"},{"hostname":"b.example.com","Id":"2"},{"hostname":"c.example.com","Id":"1"},{"hostname":"d.example.com","Id":"1"}]
update={"hostname":"c.example.com","Id":"10"}
for item in data:
if item['hostname'] == 'c.example.com':
item = update
print(data)
为什么输出没有更新
[{'hostname': 'a.example.com', 'Id': '1'}, {'hostname': 'b.example.com', 'Id': '2'}, {'hostname': 'c.example.com', 'Id': '1'}, {'hostname': 'd.example.com', 'Id': '1'}]
为什么item['Id'] = 10 有效,而item = update 无效?
如何解决?
【问题讨论】:
标签: python json python-3.x list dictionary