[Python] 代入

変数への代入は、等号"="を使って行います。

>>> foo = "bar"
>>> foo
'bar'

複数の代入を、ひとつの代入文で書くことができます(こういう代入を、マルチターゲット代入と呼びます)。

>>> foo = bar = "baz"
>>> foo
'baz'
>>> bar
'baz'

代入文の左辺には、複数の変数をコンマでつなげて指定することができます。このとき、代入される右辺値は、変数の数と同じ数の式をコンマでつなげて指定します。

>>> foo, bar, baz = "hoge", "fuga", "piyo"
>>> foo, bar, baz
('hoge', 'fuga', 'piyo')

このとき、右辺値は、リストやタプル、文字列といったシーケンスでも構いません。左の変数から順に、シーケンスの最初の値から代入されます。

>>> foo, bar, baz = ["hoge", "fuga", "piyo"]
>>> foo, bar, baz
('hoge', 'fuga', 'piyo')
>>> foo, bar, baz = ("hoge", "fuga", "piyo")
>>> foo, bar, baz
('hoge', 'fuga', 'piyo')
>>> foo, bar, baz = "abc"
>>> foo, bar, baz
('a', 'b', 'c')

同様に、左辺がリストやタプルであっても構いません。

>>> [foo, bar, baz] = "hoge", "fuga", "piyo"
>>> foo, bar, baz
('hoge', 'fuga', 'piyo')
>>> (foo, bar, baz) = "hoge", "fuga", "piyo"
>>> foo, bar, baz
('hoge', 'fuga', 'piyo')