¿Cómo funciona Python para asignar múltiples variables en una línea?
Cuáles son los pasos que Python realmente hace para asignar múltiples variables en una línea?
Solía hacer A [0], A [1] = A [1], A [0] para intercambiar, pero recientemente recibí un error al asignar una lista vinculada.
# insert self->node->...
def insert_next(self, node):
node.next, node.prev = self.next, self
self.next, self.next.prev = node, node
self.next
volversenode
antes de lo que esperaba, por lo que la asignación se convierte en
self.next, node.next = node, node
Sin embargo, si lo hago
self.next.prev, self.next = node, node
¡Funciona
"Asumo" que los pasos son
1. cache values at the right side
2. assign to left side one by one, left to right
n
1. cache values at the right side
2. cache the ref at the left side
2. assign to ref one by one, left to right
Entonces, ¿cuáles son los pasos?