私はこれを持っていました:
[{'name': 'Peter'}, {'name': 'Anna'}]
そして、私はそれからこれを作りたかった:
[{'name': 'Peter Williams'}, {'name': 'Anna Williams'}]
だから私はした:
>>> li = [{'name': 'Peter'}, {'name': 'Anna'}]
>>> new_li = []
>>> dic = {}
>>> for i in li:
... dic["name"] = i["name"] + " Williams"
... new_li.append(dic)
しかし:
>>> new_li
[{'name': 'Anna Williams'}, {'name': 'Anna Williams'}]
なんで?
最良の入手方法も教えていただけます[{'name': 'Peter Williams'}, {'name': 'Anna Williams'}]
か?
編集
この動作を理解できなかった理由は、次のように仮定したためです。
>>> dict = {'name':'Peter'}
>>> lis = [dict]
>>> dict['name'] = 'Olaf'
どこ
>>> print lis
与える
[{'name': 'Peter'}]
実際そうでありながら
[{'name': 'Olaf'}]