|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
1
aliens=[]
for alien_number in range(0,30):
new_alien={'a':1,'b':2,'c':3}
aliens.append(new_alien)
for alien in aliens[0:3]:
if alien['a']==1:
alien['a']=2
alien['b']=3
alien['c']=4
for alien in aliens[0:5]:
print(alien)
print('..')
输出
{'a': 2, 'b': 3, 'c': 4}
{'a': 2, 'b': 3, 'c': 4}
{'a': 2, 'b': 3, 'c': 4}
{'a': 1, 'b': 2, 'c': 3}
{'a': 1, 'b': 2, 'c': 3}
..
2
aliens=[]
new_alien={'a':1,'b':2,'c':3}
for alien_number in range(0,30):
aliens.append(new_alien)
for alien in aliens[0:3]:
if alien['a']==1:
alien['a']=2
alien['b']=3
alien['c']=4
for alien in aliens[0:5]:
print(alien)
print('..')
输出
{'a': 2, 'b': 3, 'c': 4}
{'a': 2, 'b': 3, 'c': 4}
{'a': 2, 'b': 3, 'c': 4}
{'a': 2, 'b': 3, 'c': 4}
{'a': 2, 'b': 3, 'c': 4}
..
为什么把new_alien={'a':1,'b':2,'c':3}换个地方最后的输出就完全不一样了
因为代码逻辑不一样啊,第一个你添加字典,每一次都是新建一个字典,然后添加在列表里面的,字典和字典之间没有联系,一个字典的修改不影响另外一个字典
第二个,你每次添加的都是同一个字典,只要修改列表里面第一个字典,后面的字典就都会改变
|
|