🐍
【Python】複数の変数への同時代入
概要
Pythonの、複数の変数への同時代入に関する備忘録です。以下では、2つの変数を扱っていますが、もちろん3つ以上にも対応しています。
個別に代入
a = 1
b = 2
print(a)
print(b)
1
2
複数を一度に代入
a,b = 1,2
print(a)
print(b)
1
2
同じ値を一度に代入
a = b = 1
print(a)
print(b)
1
1
複数の変数から複数の変数への代入
a,b = 1,2
a,b = b,a
print(a)
print(b)
2
1
シーケンスオブジェクトの代入(タプル)
tpl = (1,2)
a,b = tpl
print(a)
print(b)
1
2
シーケンスオブジェクトの代入(リスト)
lst = [1,2]
a,b = lst
print(a)
print(b)
1
2
タプルと同じ結果になります。
1つの変数に対して複数の値を代入
tpl=1,2
print(type(tpl))
print(tpl[0])
print(tpl[1])
<class 'tuple'>
1
2
これは()を使わないタプルの生成になります。
タプルのアンパック
tpl=(1,2)
a,b = tpl
print(a)
print(b)
1
2
タプルの要素数と同数の変数を用意することで、タプルをアンパックできます。
以上です。
Discussion