VarArgs parameters
VarArgs Parameters (Variable-Length Arguments)
In some instances you might need to pass more arguments than have already been specified. Going back to the function to redefine it can be a tedious process. Variable-Length arguments can be used instead. These are not specified in the function’s definition and an asterisk (*) is used to define such arguments.
Lets see what happens when we pass more than 3 arguments in the sum() function.
Example:
def sum(x,y,z): print("sum of three nos :",x+y+z) sum(5,10,15,20,25)
When the above code is executed, it produces the following result :
TypeError: sum() takes 3 positional arguments but 5 were given
Syntax - Variable-Length Arguments
def function_name(*args): function_body return_statement
Example:
def printnos (*nos): for n in nos: print(n) return # now invoking the printnos() function print ('Printing two values') printnos (1,2) print ('Printing three values') printnos (10,20,30)
Output:
Printing two values
1
2
Printing three values
10
20
30