タプルのリストを開梱

idetyp:

私は、次のコードで今日驚きました。

testcases = [([1, 1, 1], 2, 2)]

for a, b, c in testcases:
    print(a, b, c)

それが印刷されます。

[1, 1, 1] 2 2

私は、エラーを期待し、我々はタプル要素に到達するために第二のループを必要とするだろうと思っていました。enyoneは、それがどのように動作するか私に説明できますか?私はどのように取得しないabおよびc割り当てられています。私は、Python 3.6を使用していました。乾杯!

quamrana;

あなたが持っているもので、見てみましょう:

testcases = [([1, 1, 1], 2, 2)]

これは、リストです。サイズ1の。だから、testcases[0]そこにある唯一の要素です。

このコードはそう:

for a, b, c in testcases:
    pass

長さ1のループがあります。(一度だけである)ループを通るたびにそう、あなたが要素を取得:([1, 1, 1], 2, 2)ですtupleサイズ3の。

:だから、開梱a,b,c = testcases[0]います:

a == [1, 1, 1]
b == 2
c == 2

これはあなたが印刷された見たものです。

おすすめ

転載: http://10.200.1.11:23101/article/api/json?id=405961&siteId=1