【发布时间】:2017-10-07 22:02:09
【问题描述】:
我尝试创建一个可以更改字典“标题”值的 for 循环。然后将新值附加到 b 列表中。因此 b 列表中将有 5 个具有不同“标题”值的字典。这是我的代码。
dictionary = {'title': 'hello', 'black': 'white', 'yellow':'green'}
b = []
for a in range(5):
dictionary['title'] = str(a)
b.append(dictionary)
print b
结果是:
[{'black': 'white', 'yellow': 'green', 'title': '4'}, {'black': 'white', 'yellow': 'green', 'title': '4'}, {'black': 'white', 'yellow': 'green', 'title': '4'}, {'black': 'white', 'yellow': 'green', 'title': '4'}, {'black': 'white', 'yellow': 'green', 'title': '4'}]
[0.136s完成]
为什么所有的“标题”都具有相同的值?如何为附加到列表的每个 dicts 获得不同的数字。谢谢
【问题讨论】:
-
您只有一本字典,在您的列表中重复
-
只需在循环中使用
print b,您就会明白一切。
标签: python python-2.7 dictionary for-loop