At some point in our lives, we think about how amazing it would be to wake up as someone else. You can admire as well as idolize that person in life. This idea of swapping personalities often fascinates us. While swapping personalities is not possible now, swapping numbers is quite easy.


Program code :
# The following code swaps two numbers
# Taking user input
num1 = int(input("Enter first number: "))
num2 = int(input("Enter second number: "))
# Printing before swap
print(f"Before swap: num1 = {num1} num2 = {num2}")
# Swapping
temp = num1
num1 = num2
num2 = temp
# Printing after swap
print(f"After swap: num1 = {num1} num2 = {num2}")
Output :
Enter first number: 2
Enter second number: 6
Before swap: num1 = 2 num2 = 6
After swap: num1 = 6 num2 = 2
Explanation of code :
Program code :
# The following code swaps two numbers
# Taking user input
num1 = int(input("Enter first number: "))
num2 = int(input("Enter second number: "))
# Printing before swap
print(f"Before swap: num1 = {num1} num2 = {num2}")
# Swapping
num1, num2 = num2, num1
# Printing after swap
print(f"After swap: num1 = {num1} num2 = {num2}")
Output :
Enter first number: 2
Enter second number: 6
Before swap: num1 = 2 num2 = 6
After swap: num1 = 6 num2 = 2
Explanation of code :
Program code :
# The following code swaps two numbers
# Taking user input
num1 = int(input("Enter first number: "))
num2 = int(input("Enter second number: "))
# Printing before swap
print(f"Before swap: num1 = {num1} num2 = {num2}")
# Swapping
num1 = num1 + num2
num2 = num1 - num2
num1 = num1 - num2
# Printing after swap
print(f"After swap: num1 = {num1} num2 = {num2}")
Output :
Enter first number: 2
Enter second number: 6
Before swap: num1 = 2 num2 = 6
After swap: num1 = 6 num2 =
Explanation of code :
Let’s swap 2 and 6 pictorially:
num1 = 2, num2 = 6
num1 = num1 + num2 = 2 + 6 = 8
num2 = num1 - num2 = 8 - 6 = 2
num1 = num1 - num2 = 8 - 2 = 6
Hence swapped
Program code :
# The following code swaps two numbers
# Taking user input
num1 = int(input("Enter first number: "))
num2 = int(input("Enter second number: "))
# Printing before swap
print(f"Before swap: num1 = {num1} num2 = {num2}")
# Swapping
num1 = num1 * num2
num2 = num1 / num2
num1 = num1 / num2
# Printing after swap
print(f"After swap: num1 = {num1} num2 = {num2}")
Output :
Enter first number: 2
Enter second number: 6
Before swap: num1 = 2 num2 = 6
After swap: num1 = 6 num2 = 2
Explanation of code :
Let’s swap 2 and 6 pictorially:
num1 = 2, num2 = 6
num1 = num1 * num2 = 2 * 6 = 12
num2 = num1 / num2 = 12 / 6 = 2
num1 = num1 / num2 = 12 / 2 = 6
Hence swapped
Program code :
# The following code swaps two numbers
# Taking user input
num1 = int(input("Enter first number: "))
num2 = int(input("Enter second number: "))
# Printing before swap
print(f"Before swap: num1 = {num1} num2 = {num2}")
# Swapping
num1 = num1 ^ num2
num2 = num1 ^ num2
num1 = num1 ^ num2
# Printing after swap
print(f"After swap: num1 = {num1} num2 = {num2}")
Output :
Enter first number: 2
Enter second number: 6
Before swap: num1 = 2 num2 = 6
After swap: num1 = 6 num2 = 2
Explanation of code :
| A | B | XOR |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
Let’s swap 2 and 6 pictorially:
num1 = 2 (0010) , num2 = 6 (0110)
num1 = num1 ^ num2 = 2 ^ 6 = 4
0010
0110
—----
0100 = 4
num2 = num1 ^ num2 = 4 ^ 6 = 2
0100
0110
—----
0010 = 2
num1 = num1 ^ num2 = 4 ^ 2 = 6
0100
0010
—----
0110 = 6
Hence swapped.
Program code :
# The following code swaps two numbers
# Taking user input
num1 = int(input("Enter first number: "))
num2 = int(input("Enter second number: "))
# Printing before swap
print(f"Before swap: num1 = {num1} num2 = {num2}")
# Swapping
num1 = (num1 & num2) + (num1 | num2) # equivalent to num1 + num2
num2 = num1 + (~num2) + 1 # equivalent to num1 - num2
num1 = num1 + (~num2) + 1 # equivalent to num1 - num2
# Printing after swap
print(f"After swap: num1 = {num1} num2 = {num2}")
Output :
Enter first number: 2
Enter second number: 6
Before swap: num1 = 2 num2 = 6
After swap: num1 = 6 num2 = 2
Explanation of code :
Below are the truth tables given for these operators :
| A | B | AND |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
| A | B | OR |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
| Input | NOT |
|---|---|
| 0 | 1 |
| 1 | 0 |
Let’s swap 2 and 6 pictorially:
num1 = 2 (0010) , num2 = 6 (0110)
num1 = (num1 & num2) + (num1 | num2) = 2 + 6 = 8
0010 0010
& 0110 | 0110
—---- —-----
0010 = 2 0110 = 6
num2 = num1 + (~num2) + 1 = 8 + (-7) + 1 = 2
~ 0110 = -7
num1 = num1 + (~num2) + 1 = 8 + (-3) + 1 = 6
~ 0010 = -3
Hence swapped
Program code :
# Swapping the seats of two passengers
# Taking user input
seat1 = input("Enter seat number of Passenger 1: ")
seat2 = input("Enter seat number of Passenger 2: ")
# Printing before swap
print(f"\nBefore Swap: Passenger 1 = {seat1}, Passenger 2 = {seat2}")
# Swapping
seat1, seat2 = seat2, seat1
# Printing after swap
print(f"After Swap: Passenger 1 = {seat1}, Passenger 2 = {seat2}")
Output Sample :
Enter the seat number of Passenger 1: 12A
Enter the seat number of Passenger 2: 15B
Before Swap: Passenger 1 = 12A, Passenger 2 = 15B
After Swap: Passenger 1 = 15B, Passenger 2 = 12A
Explanation of code :
Program code :
# Swapping roles in a team
# Taking user input
member1 = input("Enter name of Member 1: ")
role1 = input(f"Enter {member1}'s role: ")
member2 = input("\nEnter name of Member 2: ")
role2 = input(f"Enter {member2}'s role: ")
# Printing roles before swap
print(f"\nBefore Swap:")
print(f"{member1} is a {role1}")
print(f"{member2} is a {role2}")
# Swapping roles
role1, role2 = role2, role1
# Printing roles after swap
print(f"\nAfter Swap:")
print(f"{member1} is now a {role1}")
print(f"{member2} is now a {role2}")
Output Sample :
Enter the name of Member 1: Alice
Enter Alice's role: Desithere Enter name of Member 2: Bob
Enter Bob's role: Developer
Before Swap:
Alice is a Designer
Bob is a Developer
After Swap:
Alice is now a Developer
Bob is now a Designer
Explanation of code :
Conclusion :
Swapping two numbers in Python can be done in multiple ways—using a temporary variable, arithmetic operations, tuple unpacking, bitwise XOR, or a mix of bitwise and arithmetic logic. Each method demonstrates Python’s flexibility and logical depth. Understanding these methods enhances problem-solving skills and builds a strong foundation in programming logic. Enroll in a Python programming course in Noida for better learning and the latest trends of industry trends. Keep updating yourself to get your dream job.
Personalized learning paths with interactive materials and progress tracking for optimal learning experience.
Explore LMSCreate professional, ATS-optimized resumes tailored for tech roles with intelligent suggestions.
Build ResumeDetailed analysis of how your resume performs in Applicant Tracking Systems with actionable insights.
Check ResumeAI analyzes your code for efficiency, best practices, and bugs with instant feedback.
Try Code ReviewPractice coding in 20+ languages with our cloud-based compiler that works on any device.
Start Coding
TRENDING
BESTSELLER
BESTSELLER
TRENDING
HOT
BESTSELLER
HOT
BESTSELLER
BESTSELLER
HOT
POPULAR