P115 デフォルト引数の罠

Pythonでは関数を宣言する際、デフォルト値を設定する事ができる。
このデフォルト引数は、呼び出されたタイミングで都度評価されるのではなく、実行時に最初に一度評価されるだけである。
そのため、ミュータブルな値を用いてしまっていた場合、二度目の実行を行った際に異なる値が返ってくる恐れがある。

入門 Python 3

入門 Python 3