DEV Community

Cover image for 3 ways to swap two variables in Python
Isabelle M.
Isabelle M.

Posted on • Originally published at 30secondsofcode.org

4 3

3 ways to swap two variables in Python

Using a temporary variable

The simplest way to swap the values of two variables is using a temp variable. The temp variables is used to store the value of the fist variable (temp = a). This allows you to swap the value of the two variables (a = b) and then assign the value of temp to the second variable.

a = 11
b = 7

temp = a
a = b
b = temp

print(a) # 7
print(b) # 11
Enter fullscreen mode Exit fullscreen mode

Without a temporary variable (Tuple swap)

Another way to swap the values of two variables, without using a temporary variable, is to use tuple packing and sequence unpacking. Tuples can be constructed in a number of ways, one of which is by separating tuple items using commas. Moreover, Python evaluates the right-hand side of an assignment before its left-hand side. So, by separating the variables with commas on the right side of the statement the variables are packed into a tuple and unpacked by placing the same number of comma-separated target variables on the left side.

This method of variable swapping and permutation can be used for more than two variables as long as the same number of variables are on both sides of the statement.

a = 11
b = 7

a, b = b, a

print(a) # 7
print(b) # 11
Enter fullscreen mode Exit fullscreen mode

Using arithmetic operators (for numbers only)

If the two variables are numbers, their values can be swapped using arithmetic operators such as addition and subtraction (+, -) or multiplication and division (*, /). This swapping method is based on calculating the sum of the two numbers and then swapping them using the sum and the difference from the sum.

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
Enter fullscreen mode Exit fullscreen mode

Do you like short, high-quality code snippets and articles? So do we! Visit 30 seconds of code for more articles like this one or follow us on Twitter for daily JavaScript, React and Python snippets! 👨‍💻

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

Top comments (0)

AWS Security LIVE!

Join us for AWS Security LIVE!

Discover the future of cloud security. Tune in live for trends, tips, and solutions from AWS and AWS Partners.

Learn More

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay