Concept
Parameters can carry default values, and callers can pass arguments by name. Together they make functions flexible without a pile of overloads.
The tutor works through these with you, in conversation and code. A session ends when you have shown them, not when a video does.
A few lines that show Default and keyword arguments doing its job.
def connect(host, port=5432, timeout=10):
return f"{host}:{port} ({timeout}s)"
print(connect("db.local"))
print(connect("db.local", timeout=3))
print(connect(port=6543, host="other"))Using a mutable default such as items=[]. The list is created once, when the function is defined, so every call that relies on the default shares and mutates it. Default to None and create the list inside.
Your roadmap puts these before Default and keyword arguments, unless you already know them.
Once a session shows you understand Default and keyword arguments, it comes back for review. Each review takes a minute and tells the memory model how well you still know it.