首页 > 解决方案 > Python:是否有 Python 式的“获取和更新”表达式?

问题描述

你见过多少次这样的事情:

tmp = reference
reference = new_value
return tmp

它并没有真正打扰我,但是是否有一些 Pythonic 速记可以在没有临时变量的情况下完成同样的事情?

(我设想类似return shift(reference, new_value)...)

标签: pythonexpression

解决方案


国际大学联盟:

>>> a=1
>>> b=2
>>> a,b=b,a
>>> a
2
>>> b
1
>>> 

在这种情况下,交换变量可以按预期工作

所以基本上逻辑写成:

a,b=b,a
^ ^ ^ ^
1 2 2 1

2 1
^ ^
1 2

推荐阅读