Python:在 for 循环中解压缩嵌套列表的元素

Python: Unpacking elements of nested lists in a for-loop

提问人:Noob SWEbot 提问时间:1/20/2023 最后编辑:Noob SWEbot 更新时间:1/20/2023 访问量:75

问:

我有以下代码:

queries = [[0, 3], [2, 5], [2, 4]]
for x, y in queries:
    ...

我知道这是在利用“元组解包”

我不太明白for循环中的“x”和“y”如何分别指向每个嵌套列表的第一个和第二个元素。

对我来说,“for x”读作“对于外部列表中的每个元素”,而“y”部分是每个索引处的嵌套列表。换句话说,我正在阅读此内容,因为 X 指向“查询”中的每个索引,Y 指向该索引处的元素(因此嵌套/内部列表)。

循环如何进入每个嵌套列表并将第一个元素设置为 X,将第二个元素设置为 Y?

从那以后,我阅读了元组解包、列表理解以及查看相关示例,但我对元组解包的理解有所提高,但并不完全是我提出的问题。

python python-3.x 列表 嵌套列表 iterable-解包

评论

0赞 Max 1/20/2023
您应该将其读作 .for (x, y) in …
1赞 juanpa.arrivillaga 1/20/2023
不。基本上,它相当于for <assignment target> in <iterable><assignment targe> = <element><alement><iterable>

答:

1赞 Michael Cao 1/20/2023 #1

可以将其视为获取嵌套列表的单个实体,然后细分为 和 。下面的代码是等效的,也许可以更好地拼写出来:(x,y)xy

queries = [[0, 3], [2, 5], [2, 4]]
for query in queries:
    x, y = query
    print(x,y)