修改字典中的值不起作用

时间:2018-01-31 13:27:32

标签: python

alien_3 = {'x_position' : 0, 'y_position' : 25, 'speed' : 'medium'}
print ('Original x_position: ' + str(alien_3['x_position']))

# Move the alien to the right 
# Determin how far to move the alien on its current speed
if alien_3['speed'] == 'slow':
    x_increment = 1
elif alien_3['speed'] == 'medium':
    x_increment = 2
else:
    # This alien must be really fast
    x_increment = 3

# The new position is the old position plus the increment
alien_3['x_postion'] = alien_3['x_position'] + x_increment
print('New x_postion : ' + str(alien_3['x_position']))

所以当我运行这个时,我没有得到增加的值我得到

Original x_position: 0
New x_postion : 0

2 个答案:

答案 0 :(得分:1)

你有一个错字:你得到 alien_3['x_position']但你设置 alien_3['x_postion'],错过了i

请注意,使用+=可以更好地表达,这可以避免此问题:

alien_3['x_position'] += x_increment

答案 1 :(得分:1)

这是一个错字。

alien_3 [' x_postion'] = alien_3 [' x_position'] + x_increment

应该是:

alien_3 [' x_position'] = alien_3 [' x_position'] + x_increment