我将如何让这个工作?我已经搜索过,但我无法让它继续工作。即使添加更多变量,我是否应该将a()函数放在b函数中?
counter = 1
def a():
az = 1
bz = 2
cz = 3
def b():
a()
if counter > 0 :
print az, bz, cz
b()
答案 0 :(得分:1)
好的,你需要理解scope
的概念。仅在您的函数az
中知道bz
,cz
和a()
。因此,您无法在函数b()
中打印其值。你可以这样做:
counter = 1
def a():
az = 1
bz = 2
cz = 3
if counter > 0 :
print az, bz, cz
def b():
a()
b()
正如@ fileyfood500在评论中所说,你可能想阅读this。
答案 1 :(得分:0)
一个可能的解决方法是从a返回值。
counter = 1
def a():
az = 1
bz = 2
cz = 3
return(az,bz,cz)
def b():
(az,bz,cz) = a()
if counter > 0 :
print az, bz, cz
b()