Parameters & Arguments in Python
Buy Me a Coffee☕ You can set parameters and arguments for a function as shown below: Parameters: *Memos: A parameter can have a default value. All the parameters after the parameter which has a default value must have default values. def func(fname, lname, age, gender): pass def func(fname="John", lname="Smith", age=36, gender="Male"): pass def func(fname, lname, age=36, gender="Male"): pass def func(fname="John", lname="Smith", 36, "Male"): pass # SyntaxError: invalid syntax Arguments: *Memos: An argument can have a keyword. All the arguments after the argument which has a keyword must have keywords. def func(fname, lname, age, gender): print(fname, lname, age, gender) func("John", "Smith", 36, "Male") func(fname="John", lname="Smith", age=36, gender="Male") func(age=36, lname="Smith", gender="Male", fname="John") func("John", "Smith", age=36, gender="Male") # John Smith 36 Male func(fname="John", lname="Smith", 36, "Male") # SyntaxError: positional argument follows keyword argument func(36, "Smith", age=36, fname="John") # TypeError: func() got multiple values for argument 'fname' func(lname="Smith", lname="Brown", age=36, gender="Male") # SyntaxError: keyword argument repeated: lname def func(fname="John", lname="Smith", age=36, gender="Male"): print(fname, lname, age, gender) func() # John Smith 36 Male func("Tom", "Brown") # Tom Brown 36 Male func(gender="Female", fname="Anna") # Anna Smith 36 Female

You can set parameters and arguments for a function as shown below:
Parameters:
*Memos:
- A parameter can have a default value.
- All the parameters after the parameter which has a default value must have default values.
def func(fname, lname, age, gender): pass
def func(fname="John", lname="Smith", age=36, gender="Male"): pass
def func(fname, lname, age=36, gender="Male"): pass
def func(fname="John", lname="Smith", 36, "Male"): pass
# SyntaxError: invalid syntax
Arguments:
*Memos:
- An argument can have a keyword.
- All the arguments after the argument which has a keyword must have keywords.
def func(fname, lname, age, gender):
print(fname, lname, age, gender)
func("John", "Smith", 36, "Male")
func(fname="John", lname="Smith", age=36, gender="Male")
func(age=36, lname="Smith", gender="Male", fname="John")
func("John", "Smith", age=36, gender="Male")
# John Smith 36 Male
func(fname="John", lname="Smith", 36, "Male")
# SyntaxError: positional argument follows keyword argument
func(36, "Smith", age=36, fname="John")
# TypeError: func() got multiple values for argument 'fname'
func(lname="Smith", lname="Brown", age=36, gender="Male")
# SyntaxError: keyword argument repeated: lname
def func(fname="John", lname="Smith", age=36, gender="Male"):
print(fname, lname, age, gender)
func()
# John Smith 36 Male
func("Tom", "Brown")
# Tom Brown 36 Male
func(gender="Female", fname="Anna")
# Anna Smith 36 Female