python中的局部变量问题,变量未定义

python中的局部变量问题,变量未定义,python,python-3.x,Python,Python 3.x,我正在处理一个项目,运行脚本时不断出现变量未定义错误。如何在不声明全局变量的情况下解决此问题 def func1(): x = 1 def func2(): y=5 x + y = z print(z) x在func1的本地范围内,因此无法从func2读取。您可以使用global x=1,但我不推荐使用。而是将x传递到func2: def func1(): x = 1 return x def func2(x): y = 5 z

我正在处理一个项目,运行脚本时不断出现变量未定义错误。如何在不声明全局变量的情况下解决此问题

def func1():
    x = 1
def func2():
    y=5
    x + y = z
    print(z)

x
func1
的本地范围内,因此无法从
func2
读取。您可以使用
global x=1
,但我不推荐使用。而是将
x
传递到
func2

def func1():
    x = 1
    return x
def func2(x):
    y = 5
    z = x + y # You had this backwards as well (i.e. x + y = z)
    print(z)
x = func1()
func2(x)

您还需要将
x+y=z
更改为
z=x+y
。甚至没有注意到谢谢。