当我尝试在函数add中调用a,b时,我得到一个未定义的事件,尽管我正在返回值。有人可以帮助我如何让它返回a和b?
def numbers():
a= input ("a:")
a = int(a)
b= input ("b:")
b = int(b)
return a
return b
def add():
numbers()
print (a)
print (b)
add()
任何建议或帮助都会很棒。
谢谢
答案 0 :(得分:5)
return
语句几乎总是会导致函数立即终止,并且函数中的其他语句都不会运行。因此,一旦您返回a
,您就永远无法访问return b
。你需要同时返回它们。
此外,从函数返回值不会自动将这些名称放入调用函数的作用域中。您需要手动将值分配给某些内容。
def numbers():
a= input ("a:")
a = int(a)
b= input ("b:")
b = int(b)
return a,b
def add():
a,b = numbers()
print (a)
print (b)
add()
答案 1 :(得分:0)
我想是的:
def numbers():
a= input ("a:")
a = int(a)
b= input ("b:")
b = int(b)
return a, b
def add(a, b):
print (a)
print (b)
return a, b
def main():
another_a, another_b = numbers()
another_a, another_b = add(another_a, another_b)
main()