微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

列表理解中的双重迭代

如何解决列表理解中的双重迭代

哎呀,我想我找到了答案:我对那个循环是内部的,哪个循环是外部的,没有足够的小心。列表理解应为:

[x for b in a for x in b]

为了获得期望的结果,是的,一个当前值可以作为下一个循环的迭代器。

解决方法

在Python中,列表推导中可以有多个迭代器,例如

[(x,y) for x in a for y in b]

对于一些合适的序列a和b。我知道Python的列表推导的嵌套循环语义。

我的问题是:理解中的一个迭代器可以引用另一个吗?换句话说:我能有这样的东西吗:

[x for x in a for a in b]

外循环的当前值在哪里是内循环的迭代器?

例如,如果我有一个嵌套列表:

a=[[1,2],[3,4]]

列表理解表达式将如何获得此结果:

[1,2,3,4]

?? (请只列出理解答案,因为这是我要查找的内容)。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。