Skip to content

Python中交换两个变量的3种方法

使用临时变量

交换两个变量的最简单方法是使用一个temp变量。temp变量用于存储第一个变量的值(temp = a)。这样可以交换两个变量的值(a = b),然后将temp的值赋给第二个变量。

a = 11
b = 7

temp = a
a = b
b = temp

print(a) # 7
print(b) # 11

不使用临时变量(元组交换)

另一种在不使用临时变量的情况下交换两个变量的值的方法是使用元组打包序列解包。元组可以通过使用逗号分隔元组项的方式构建。此外,Python在赋值语句的左侧之前评估赋值语句的右侧。因此,通过在语句的右侧用逗号分隔变量,将变量打包成一个元组,并通过在左侧放置相同数量的逗号分隔的目标变量来解包。

只要语句的两侧都有相同数量的变量,这种变量交换和排列的方法可以用于多于两个变量。

a = 11
b = 7

```py
a, b = b, a

print(a) # 7
print(b) # 11

使用算术运算符(仅适用于数字)

如果两个变量是数字,可以使用算术运算符(如加法和减法(+-)或乘法和除法(*/))来交换它们的值。这种交换方法基于计算两个数字的和,然后使用和和差来交换它们。

a = 11
b = 7

a = a + b # a = 18, b = 7
b = a - b # a = 18, b = 11
a = a - b # a = 7,  b = 11

print(a) # 7
print(b) # 11