【发布时间】:2019-03-01 05:42:20
【问题描述】:
这是我的代码:
a = [1, 2, 3, 4, 5]
a[0], a[a[0]] = a[a[0]], a[0]
print(a)
我正在尝试将a[0] 与a[a[0]] 交换(即在这种情况下为a[1]),所以我期望的结果是:
[2, 1, 3, 4, 5]
我得到的结果是[2, 2, 1, 4, 5],这不是我想要的。
如果我将a[0], a[a[0]] = a[a[0]], a[0] 简化为a[0], a[1] = a[1], a[0],它可以工作。
如何使列表中的这种交换像a, b = b, a 一样工作?
【问题讨论】:
-
a = [1, 2, 3, 4, 5]; a[0], a[a[0]] = a[a[0]], a[0]; print(a),在我的系统中,它打印 [2, 2, 1, 4, 5]。 -
对不起,我弄错了,[2, 2, 1, 4, 5] 是真的。
-
另外提一下,你所期待的。
标签: python python-3.x swap iterable-unpacking