私は本当にPythonの変数参照を理解していると思っていたので、なぜこのコードが変数「a」を「1」にしないのか混乱しています:
>>> a,b,c = None, None, None
>>> for var, val in zip((a,b,c),[1]):
... var = val
...
>>> print a
None
>>> print var
1
ここでPythonが何をしているのか、誰か説明できますか? 「var」と「a」が同じ場所を指していないのはなぜですか?
おまけの質問: 1 ~ 3 個のアイテムを持つことができるリストから 3 つの変数を割り当て、リストが不足している場合に変数を [なし] に設定するエレガントな方法は何ですか?