Open In App

Python Program to Swap Two Variables

Improve
Improve
Like Article
Like
Save
Share
Report

Given two variables x and y, write a Python program to swap their values. Let’s see different methods in Python to do this task. 
 

python-swap-two-variable

Method 1: Using Naive approach
The most naive approach is to store the value of one variable(say x) in a temporary variable, then assigning the variable x with the value of variable y. Finally, assign the variable y with the value of the temporary variable.
 

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)


Output

Value of x: 50
Value of y: 10

Method 2: Using comma operator
Using the comma operator the value of variables can be swapped without using a third variable.
 

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)


Output

Value of x: 50
Value of y: 10

Method 3: Using XOR
The bitwise XOR operator can be used to swap two variables. The XOR of two numbers x and y returns a number which has all the bits as 1 wherever bits of x and y differ. For example XOR of 10 (In Binary 1010) and 5 (In Binary 0101) is 1111 and XOR of 7 (0111) and 5 (0101) is (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)


Output

Value of x: 50
Value of y: 10

Method 4: Using arithmetic operators we can perform swapping in two ways.

  • Using addition and subtraction operator :

The idea is to get sum in one of the two given numbers. The numbers can then be swapped using the sum and subtraction from 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 -
x = x - y
 
print("Value of x:", x)
print("Value of y:", y)


Output

Value of x: 50
Value of y: 10
  • Using multiplication and division operator :

The idea is to get multiplication of the two given numbers. The numbers can then be calculated by using the division.

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)


Output

Value of x :  50.0
Value of y :  10.0

Method 5: using Bitwise addition and subtraction for swapping.

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)


Output

a after swapping:  1
b after swapping:  5


Last Updated : 08 Jul, 2021
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads