a = 13
b = 12
def add():
return a + b
def add2(a, b): # why to pass a and b?
return a + b
print(add()) # result 25
print(add2(a, b)) #result 25
如果我们可以使用值/变量而不将它们传递给函数,为什么我们需要将参数传递给python函数?
在您的情况下,没有必要传递参数,因为您总是添加相同的两个变量。但是,如果你想要一个可以添加任意两个变量的函数,该函数如何知道要添加哪两个变量?在下面的例子中,我有三个变量和一个函数来添加其中两个:
def add():
return a + b
a = 5
b = 7
c = 10
print(add()) # 12
# No way to add a + c or b + c
问题是,如果我想将c
添加到其他变量中,我没有办法做到这一点。我们可以定义一个函数,它需要两个参数来解决这个问题:
def add(n1, n2):
return n1 + n2
a = 5
b = 7
c = 10
print(add(a, b)) # 12
print(add(a, c)) # 15
print(add(b, c)) # 17
所以,简而言之,如果你不确定函数需要的全局变量,你只需要向函数传递参数