以下の意味を説明できる人はいますか?
for value1,value2 in List1:
do_something()
という事は承知しています
for x1 in List2:
do_something()
here for iterates over List2
and x1
is reference to each item inList2
ですが、最初の項目が何をするのかわかりません。
と同じように
for x in seq:
繰り返し、すべての要素をにseq
代入します。x
for a, b in seq:
を繰り返しseq
、すべての要素を に割り当てますa, b
。と同等です
for x in seq:
a, b = x
何をしa, b = x
ますか?さて、シーケンスの解凍です。Python はx
2 要素シーケンスとして扱い、 と の要素を割り当てよx
うa
としb
ます。
最初のものは、シーケンスのアンパックを行います。通常の割り当てでも可能です。
mylist = [1, 2, 3]
a, b, c = mylist
リストの要素を変数a
、b
およびに代入しますc
。
同じことがループでも機能します。
for x in iterable:
a, b, c = x
に短縮できます
for a, b, c in iterable:
...
iterable が次のような 3 つの項目の要素 (ほとんどはタプル) のみを含む iterable である場合
[(1, 2, 3), (5, 4, 3), etc.]