Я действительно думал, что я понял Python переменную реферирование, поэтому я запутался, почему этот код не делает переменную «а» быть «1»:Python Переменные Referecing - неожиданное поведение с молнией
>>> a,b,c = None, None, None
>>> for var, val in zip((a,b,c),[1]):
... var = val
...
>>> print a
None
>>> print var
1
Может кто-нибудь объясняет, что здесь делает Python? Почему «вар» и «а» не указывают на одно и то же место?
Вопрос с бонусом: Какой изящный способ назначить три переменные из списка, которые могут содержать 1-3 элемента, и оставить переменные равными None, если список не подходит?
Обратите внимание, что ваш почтовый является отбрасывая b и c, поскольку первый список длиннее второго. это намеренно? – argentage
Вы помещаете переменные в кортеж (a, b, c), которые являются неизменяемыми. Использование списка [a, b, c] может помочь, но я сомневаюсь, что он будет как 'zip', вероятно, просто считывает значения – Russ