Default arguments and mutable default values
Default argument values are evaluated once at function definition time, which makes mutable defaults a common bug source.
- Immutable defaults are safer
- Use `None` as a sentinel
- Mutable defaults persist across calls
Default arguments and mutable default values