获取列表中包含的类的对象数(如果有)

时间:2016-05-04 15:10:26

标签: list python-2.7 class

嗨,所有这些似乎都是一个无用的问题,因为我找到了一种方法,但我想知道是否有更快的方法来获取列表的项目数来验证某个类。

到目前为止,我正在做:

items_from_class = 0
for x in Mylist:
    if isinstance(x, Myclass):
        items_from_class += 1
if items_from_class > 2;
    do something ...

我想要符合一行的内容,例如:

if isinstance(x,Myclass) in Mylist > 2:
    do something ...

感谢您的帮助!

3 个答案:

答案 0 :(得分:2)

令人惊讶的是,人们无缘无故地想要创建列表或lambda。

if sum(1 for x in items if isinstance(x, MyClass)) > 2:
    ## do stuff

答案 1 :(得分:0)

这是你在找什么?

if sum(map(lambda x: isinstance(x, MyClass), MyList)) > 2:
    ...do stuff

答案 2 :(得分:-1)

您可以根据需要使用以下代码

myId

希望能回答你的问题