第一种就是我们最常见的:

假设a=100,b=200

我们需要引入一个新的变量c来作为交换的工具:

c = a

a = b

b = c

以上命令执行后,可以直接交换a和b的值

第二种是利用数学的运算规律交换:

a = a+ b

b = a - b

a = a - b

乍一看有点眼花,但是仔细想想也是有道理的。编程语言中的=不是等于的意思,是赋值运算符。我们先来看第一行,将a + b的值赋值给a,也就是说,这时候变量a的值为a + b。第二行是将a - b 的值赋值给b,因为第一行已经计算出a的值是a + b,所以这里a - b的值就是原本那个a的值,就是说将原来a这个值赋值给b。再看第三行,将a - b赋值给a,第一行计算出a的值为a + b,第二行计算出b的值为原本a的值,因此这里的a - b的值为原来b的值,也就是所谓的将原来b的值赋值给变量a

第三种是python特有的方法:

a,b = b,a

是不是很简洁?不得不想起那句:人生苦短,我用python

更多推荐

python中变量值交换的三种方法