Lesson 21
Default & Keyword Arguments
A parameter can have a default value: def greet(name, greeting="Hello"). Callers may skip it.
Keyword arguments name the parameter at the call site, such as greet("Ada", greeting="Hi"). Order stops mattering and the call reads clearly.
Parameters with defaults must come after required ones. Avoid mutable defaults such as [] because they are shared between calls.
def greet(name, greeting="Hello"):
return f"{greeting}, {name}!"
print(greet("Ada"))
print(greet("Ada", greeting="Hi"))Check your understanding
What is power(3) if exponent defaults to 2?
CHALLENGE
Define power(base, exponent=2) returning base ** exponent. Print power(5), then power(2, exponent=5).
Practice →