这是python中的小添加程序,但我想在(num1,num2)
函数中使用变量insert()
到另一个sum()
函数如何解决这个问题。
def insert():
num1 = 2
num2 = 4
def sum():
add = num1 + num2
print(add)
def main():
sum()
main()
答案 0 :(得分:0)
变量num1
和num2
已被定义为insert()
函数内的局部变量,因此您不能在使用它自己的命名空间的另一个函数中使用它们。
为了解决这个问题,您可以在insert
中返回这些变量,然后将返回的变量作为参数传递给sum
函数。
def insert():
num1 = 2
num2 = 4
return num1,num2
a,b=insert()
def sum(num1,num2):
add = num1 + num2
print(add)
def main():
a,b=insert()
sum(a,b)
main()
请注意,这是一个示例,如果您只想创建一些变量,可以在模块的顶层创建它们。
此外,您可以使用global
表达式将变量定义为函数内的全局变量,但这不是一个安全和pythonic,因为返回值并将它们作为参数传递。
def insert():
global num1
global num2
num1 = 2
num2 = 4
def sum():
add = num1 + num2
print(add)
def main():
sum()
main()