Python for循环带条件

2024-06-16 10:57:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我对Python非常陌生(有C++背景)。我在Python代码中有一个函数,它返回一些对象的数组(,我对此没有任何控制权),如下所示:

def _get_object_array():
    object_array[]
    # Magically get array contents from somewhere
    # The objects have some fields like id, name etc.
    return object_array

然后在另一个函数中,我调用_get_object_array(),只检索返回对象的id。在

我所拥有的是:

^{pr2}$

但我不需要返回数组中所有对象的ID。相反,我只想存储满足某些条件的数组元素的id(例如id是偶数?)在

有没有一种方法可以像下面这样用<--标记的同一行(哪一个btw只是一个伪代码)?在

^{3}$

提前谢谢。在

/转


Tags: 对象函数代码fromidgetobjectdef
2条回答

是的,你很亲密:

id_array = [x.id for x in _get_object_array() if x.id % 2 == 0]

是的:同样的词,你只是把语法颠倒了。在

id_array = [x.id for x in _get_object_array() if x.id % 2 == 0]

列表理解是惊人的,并且可以做比大多数人意识到的多得多的工作;have a read of the relevant PEP。在

相关问题 更多 >