I'm studying how to pass a function as an argument. I've encountered a problem where I tried to invoke a passed-in function which accepts multiple arguments.
Code:
def add(*numbers):
total = 0
for number in numbers:
total += number
return total
def apply(func, value):
return func(value)
print(apply(add, (1,2,3)))
Output:
Traceback (most recent call last):
File "D:PythonPracest.py", line 13, in <module>
print(apply(add, (1,2,3)))
File "D:PythonPracest.py", line 9, in apply
return func(value)
File "D:PythonPracest.py", line 4, in add
total += number
TypeError: unsupported operand type(s) for +=: 'int' and 'tuple'
Thanks again!
question from:
https://stackoverflow.com/questions/65682113/pass-a-function-that-accepts-multiple-arguments-as-an-argument-to-a-function 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…