Archives of learned topics

【Python】複数代入について

複数代入とは下記のようなことを言っているつもりです。

>>a, b = 1, 2
>>a
1
>>b
2

複数の変数に一行の式で代入が行えること。

スワイプが一行で書ける!!

int a = 1;
int b = 2;

int temp = a;
a = b;
b = temp;

System.out.print(a + "," + b)

と記述する必要があったスワイプ処理、 Pythonだと下記のように記述可能。

t, s = 1, 2 
print(t, s) # 1, 2
t, s = s, t # ※
print(t, s) # 2, 1

このように、スワイプ処理を1行で記述可能。 ()の部分でスワイプ処理を行う前に、t, sの値を評価しているため t, s = 2, 1となっている。 かなり手抜きができるのがいいね。