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

2024-05-23 16:20:31 发布

您现在位置:Python中文网/ 问答频道 /正文

一个很简单的问题,我肯定我知道,但一定忘了

运行此代码时:

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

run_5()
print x

我得到x没有定义。我怎样才能让x在函数中使用并在函数之外生效呢?


Tags: 函数run代码定义defstartprintsince
3条回答

为了确定,未定义的x是第4行的x,而不是最后一行的x。

函数之外的x仍然存在,并且不受影响。它的内部不能添加任何内容,因为就Python而言,当您尝试对它应用+=运算符时,它不存在。

global x放在函数的开头。

但是,您应该考虑是否真的需要这样做—最好从函数返回值。

只是返回一个值?

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

x=run_5()
print x

相关问题 更多 >