我真的以为我理解 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 个项目的列表中分配三个变量并在列表不足时将变量设置为 None 的优雅方法是什么?