gpt4 book ai didi

Python:如何在这里使用列表理解?

转载 作者:太空狗 更新时间:2023-10-30 01:47:14 25 4
gpt4 key购买 nike

我有以下形式的数据:

foos = [{'bar': [{'baz': 1}, {'baz': 2}]}, {'bar': [{'baz': 3}, {'baz': 4}]}, {'bar': [{'baz': 5}, {'baz': 6}]}]

我想要一个列表理解,它会产生:

[1, 2, 3, 4, 5, 6]

我不太确定该怎么做。这有点有效:

>>> [[bar['baz'] for bar in foo['bar']] for foo in foos]
[[1, 2], [3, 4], [5, 6]]

但我希望结果是一个扁平的列表。

最佳答案

您可以在一个列表推导式中使用两个 for .. in 子句来代替嵌套列表推导式:

In [19]: [item['baz'] for foo in foos for item in foo['bar']]
Out[19]: [1, 2, 3, 4, 5, 6]

注意

[... for foo in foos for item in foo['bar']]

大致翻译成

for foo in foos:
for item in foo['bar']:
...

关于Python:如何在这里使用列表理解?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4879641/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com