money + 2
是无操作的。您实际上必须分配money
一个新值
money = money + 2
# or
money += 2
但是你会发现你得到一个错误 - 你不能分配给函数范围之外的变量。您可以使用以下global
关键字:
global money
money += 2
这将允许您更改money
函数内的值。
money
但是,推荐的方法是作为参数传递:
def gainM(money):
money += 2
Stats()
return money
if money == 1:
money = gainM(money)
如果您使用的是第二个选项(您应该使用),您还需要更改您的Stats
函数,以拥有一个money
参数。
def Stats(money):
print
print "money " + str(money)
否则,该函数将打印1
而不是3
.
另一个建议 - 使用字符串格式。
'money %d' % money # the old way
'money {}'.format(money) # the new and recommended way
现在你传入money
函数Stats
。
def gainM(money):
money += 2
Stats(money)
return money