>>526
Pythonに限らず良くある勘違いの一つだと思われるが、変数が参照型であるのと引数が参照渡しであるのとは別の話
Pythonは参照型が基本だけど、引数は“参照の値渡し”とか“共有渡し”とか呼ばれる、有り体に言えば値渡し
つまり影響があるのはメンバに対する変更のみで、引数自体への代入では元フレーム変数の参照先を変えることはできない
https://docs.python.jp/3/faq/programming.html#how-do-i-write-a-function-with-output-parameters-call-by-reference