Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 检查对象列表是否包含具有特定属性值的对象_Python_List_Attributes_Any - Fatal编程技术网

Python 检查对象列表是否包含具有特定属性值的对象

Python 检查对象列表是否包含具有特定属性值的对象,python,list,attributes,any,Python,List,Attributes,Any,我想检查我的对象列表是否包含具有特定属性值的对象 class Test: def __init__(self, name): self.name = name # in main() l = [] l.append(Test("t1")) l.append(Test("t2")) l.append(Test("t2")) 例如,我想要一种检查列表是否包含名为“t1”的对象的方法。怎样才能做到呢?我发现, 我不想每次都浏览整个列表,我只需要知道是否有1个匹配的实例。fi

我想检查我的对象列表是否包含具有特定属性值的对象

class Test:
    def __init__(self, name):
        self.name = name

# in main()
l = []
l.append(Test("t1"))
l.append(Test("t2"))
l.append(Test("t2"))
例如,我想要一种检查列表是否包含名为“t1”的对象的方法。怎样才能做到呢?我发现,


我不想每次都浏览整个列表,我只需要知道是否有1个匹配的实例。
first(…)
any(…)
或其他方法会这样做吗?

正如您很容易从中看到的,
any()
函数会短路,一旦找到匹配项,就会返回
True

any(x.name == "t2" for x in l)
first()
函数作为名为
next()
的内置函数提供。
any(x.name == "t2" for x in l)