有关如何在Python中执行此操作的任何建议吗?
if x():
a = 20
b = 10
else:
a = 10
b = 20
我可以如下交换它们,但它不是那么清楚(也不是非常pythonic的IMO)
a = 10
b = 20
if x():
[a, b] = [b, a]
答案 0 :(得分:11)
(a,b) = (20,10) if x() else (10,20)
答案 1 :(得分:5)
使用a, b = b, a
交换值被视为idiomatic in Python。
a, b = 10, 20
if x(): a, b = b, a
一件好事就是你不要重复10
和20
,所以它有点DRY-er。