一个非常简单的问题,我确信我知道但是一定忘记了
运行此代码时:
x = 0
def run_5():
print "5 minutes later"
x += 5
print x, "minutes since start"
run_5()
print x
我得到x未定义。如何在函数中使用x并在其外部实现?
答案 0 :(得分:6)
将global x
放在函数的开头。
但是,你应该考虑是否真的需要这个 - 最好从函数中返回值。
答案 1 :(得分:6)
只返回一个值?
x = 0
def run_5():
print "5 minutes later"
x += 5
return x
x=run_5()
print x
答案 2 :(得分:0)
为了确保,未定义的x是第4行的x,而不是最后一行的。
函数外部的x仍然存在且不受影响。它是内部的,不能添加任何东西,因为就Python而言,当你尝试将+ =运算符应用于它时它不存在。
答案 3 :(得分:-2)
我认为你需要在函数外部定义一个变量,如果你想从函数中为它赋一个返回值。
变量的名称可能与函数中的名称不同,因为它只是持有它