📜  交换两个变量的Python程序

📅  最后修改于: 2022-05-13 01:54:37.375000             🧑  作者: Mango

交换两个变量的Python程序

给定两个变量 x 和 y,编写一个Python程序来交换它们的值。让我们看看Python中执行此任务的不同方法。

python-swap-两个变量

方法 1:使用 Naive 方法
最天真的方法是将一个变量(比如 x)的值存储在一个临时变量中,然后将变量 y 的值分配给变量 x。最后,为变量 y 分配临时变量的值。

Python3
# Python program to demonstrate
# swapping of two variables
 
x = 10
y = 50
 
# Swapping of two variables
# Using third variable
temp = x
x = y
y = temp
 
print("Value of x:", x)
print("Value of y:", y)


Python3
# Python program to demonstrate
# swapping of two variables
 
 
x = 10
y = 50
 
# Swapping of two variables
# without using third variable
x, y = y, x
 
print("Value of x:", x)
print("Value of y:", y)


Python3
# Python program to demonstrate
# Swapping of two variables
 
x = 10
y = 50
 
# Swapping using xor
x = x ^ y
y = x ^ y
x = x ^ y
 
print("Value of x:", x)
print("Value of y:", y)


Python3
# Python program to demonstrate
# swapping of two variables
 
x = 10
y = 50
 
# Swapping of two variables
# using arithmetic operations
x = x + y  
y = x - y 
x = x - y
 
print("Value of x:", x)
print("Value of y:", y)


Python3
# Python program to demonstrate
# swapping of two variables
 
x = 10
y = 50
 
# Swapping of two numbers
# Using multiplication operator
 
x = x * y
y = x / y
x = x / y
 
print("Value of x : ", x)
print("Value of y : ", y)


Python3
#Python program to demonstrate
#swapping of two numbers
a = 5
b = 1
a = (a & b) + (a | b)
b = a + (~b) + 1
a = a + (~b) + 1
print("a after swapping: ", a)
print("b after swapping: ", b)


输出
Value of x: 50
Value of y: 10

方法2:使用逗号运算符
使用逗号运算符,可以在不使用第三个变量的情况下交换变量的值。

Python3

# Python program to demonstrate
# swapping of two variables
 
 
x = 10
y = 50
 
# Swapping of two variables
# without using third variable
x, y = y, x
 
print("Value of x:", x)
print("Value of y:", y)
输出
Value of x: 50
Value of y: 10

方法 3:使用 XOR
按位异或运算符可用于交换两个变量。两个数字 x 和 y 的 XOR 返回一个数字,其中所有位都为 1,只要 x 和 y 的位不同。例如,10(二进制 1010)和 5(二进制 0101)的异或是 1111,7(0111)和 5(0101)的异或是(0010)。

Python3

# Python program to demonstrate
# Swapping of two variables
 
x = 10
y = 50
 
# Swapping using xor
x = x ^ y
y = x ^ y
x = x ^ y
 
print("Value of x:", x)
print("Value of y:", y)
输出
Value of x: 50
Value of y: 10

方法 4:使用算术运算运算符,我们可以通过两种方式执行交换。

  • 使用加法和减法运算符:

这个想法是在两个给定数字之一中得到总和。然后可以使用 sum 和 sum 的减法来交换数字。

Python3

# Python program to demonstrate
# swapping of two variables
 
x = 10
y = 50
 
# Swapping of two variables
# using arithmetic operations
x = x + y  
y = x - y 
x = x - y
 
print("Value of x:", x)
print("Value of y:", y)
输出
Value of x: 50
Value of y: 10
  • 使用乘法和除法运算符:

这个想法是得到两个给定数字的乘法。然后可以使用除法计算数字。

Python3

# Python program to demonstrate
# swapping of two variables
 
x = 10
y = 50
 
# Swapping of two numbers
# Using multiplication operator
 
x = x * y
y = x / y
x = x / y
 
print("Value of x : ", x)
print("Value of y : ", y)
输出
Value of x :  50.0
Value of y :  10.0

方法5:使用按位加减法进行交换。

Python3

#Python program to demonstrate
#swapping of two numbers
a = 5
b = 1
a = (a & b) + (a | b)
b = a + (~b) + 1
a = a + (~b) + 1
print("a after swapping: ", a)
print("b after swapping: ", b)
输出
a after swapping:  1
b after swapping:  5