Back to search

Default arguments and mutable default values

Default argument values are evaluated once at function definition time, which makes mutable defaults a common bug source.

Python Easy Theory

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