在Python中使用函数外部的变量

Fer*_*ker 3 python

一个非常简单的问题,我确信我知道但是一定忘记了

运行此代码时:

x = 0
def run_5():
    print "5 minutes later"
    x += 5
    print x, "minutes since start"

run_5()
print x
Run Code Online (Sandbox Code Playgroud)

我得到x没有定义.如何在函数中使用x并在其外部实现?

gho*_*g74 7

只返回一个值?

x = 0
def run_5():
    print "5 minutes later"
    x += 5
    return x

x=run_5()
print x
Run Code Online (Sandbox Code Playgroud)


Dan*_*man 6

放在global x功能的开头.

但是,你应该考虑是否真的需要这个 - 最好从函数中返回值.

  • 嘘!在他们知道`return`之前,我们不希望*人们知道`global`.在一个完美的世界里,他们甚至可以在了解全球化之前了解全球化的糟糕程度. (4认同)