交换两个变量的值

a = 1, b = 2,交换a, b的值。
我们通常会想到借助第三个变量,像下面这样。

1
2
3
temp = a
a = b
b = temp

假如不借助第三个变量呢?
可以这样:

1
2
3
a = a + b
b = a - b
a = a - b

这样写的前提是,a和b可以进行求和和减法运算
映射到生活中的例子就是这样的:有两杯水,不借助第三个杯子来交换两杯水的水量,我们就可以把A杯倒入B杯(假设不会溢出),再向A杯中倒入原先B杯的水量,那么B杯剩余的水就是原先A杯的水量了。
但是假如A杯是一杯橙汁,B杯是一杯可乐,那就不可以这么交换了。

这个问题在Python中可以使用链式赋值来解决:

1
a, b = b, a

交换两个变量的值

https://oxo.red/exchange_two_int/

作者

Han

发布于

2018-03-14

更新于

2021-08-20

许可协议

评论