Swap 2 Variables in Python
In Python, it's concise, easy and faster to swap 2 variables compared in other Programming languages:
Python:
x, y = y, x
Other programming languages:
temp = x x = y y = temp
Actually, we can also use the second method just like the other programming languages, but it's
slower than the firt method. Why? Let's take a look at the following codes:
>>> x = 1 >>> y = 2 >>> x 1 >>> y 2 >>> id(x) 160123056 >>> id(y) 160123044 >>> x, y = y, x >>> x 2 >>> y 1 >>> id(x) 160123044 >>> id(y) 160123056
>>> x = 1 >>> y = 2 >>> x 1 >>> y 2 >>> id(x) 160123056 >>> id(y) 160123044 >>> temp = x >>> id(temp) 160123056 >>> x = y >>> y = temp >>> id(x) 160123044 >>> id(y) 160123056 >>> x 2 >>> y 1
As we can see the codes above, the second method involves a new variables 'temp' while the first method not,
so the second method is slower than the first method.