Do you remember the first code you ever wrote? If my calculations are right then it was a hello, world
program, right? Hello, world
is now a tradition of programming. Do you know what else is a programming tradition? Swapping two variables. Today, we will see 4 different ways to swap 2 variables.
1 Using a temporary variable
We store the value of any of the variables(suppose it's a
) in the temporary variable. Then assign the value of b
to a
. At last assign the value of tmp
to b
.
a = 50
b = 40
tmp = a
a = b
b = tmp
2 Without extra variable
This method works for python. I am not sure if the same applies to other languages as well(It should, except C++, C, C#).
a = 50
b = 5
a, b = b, a
3 Without extra variable(math)
This method uses simple math to swap two variables. Keep in mind, we are working with math, so only integer, float or double will work(including long).
a = 5
b = 2
a = a*b
b = a//b
a = a//b
Debuging mode:
>>>a = 5
>>>b = 2
>>>a = a * b ==> 10
>>>b = a / b => 10 / 2 ==> 5
>>>a = a / b => 10 / 5 ==> 2
Side note: Instead of multiplication and division you can use addition and subtraction too. And check out for ZERO DIVISION ERROR.
4 Using a list
In this case, we will add the value of a
and b
inside a list. And then extract the value in reverse order. Just like this.
a = 5
b = 2
ls = [a, b]
b, a = ls
You can also use python tuples.
That's it. I hope that helps.
Top comments (2)