【发布时间】:2018-09-03 13:28:07
【问题描述】:
Python 实际在一行中分配多个变量的步骤是什么?
我以前是做A[0],A[1] = A[1],A[0]来交换的,但是最近在分配链表的时候遇到了一个bug。
# insert self->node->...
def insert_next(self, node):
node.next, node.prev = self.next, self
self.next, self.next.prev = node, node
self.next 变成 node 比我预期的要早,所以 assign 变成了
self.next, node.next = node, node
但是,如果我这样做了
self.next.prev, self.next = node, node
有效!
我“假设”这些步骤是
1. cache values at the right side
2. assign to left side one by one, left to right
不是
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
那么,步骤是什么?
【问题讨论】:
标签: python