python __contains__()方法
__contains__()方法
python 内置方法__contains__(),可以用于判断参数指定的值value是否为调用对象中的元素。如果是,则返回True,否则返回False,与成员运算符in的功能相当。
提示:调用对象可以是python的可迭代对象,如list、tuple、dict、set、str等等。
语法
Obj.__contains__(self, key, /)
python源码中对__contains__()的介绍:
Return key in self.
参数
参数 | 描述 |
---|---|
key | 必须参数,python对象 |
返回值
python bool类型值,True or False。
__contains__()实例代码
>>> list1 = list(range(9))
>>> list1
[0, 1, 2, 3, 4, 5, 6, 7, 8]
>>> tuple(list1).__contains__(8) #元组调用__contains__()
True
>>> set(list1).__contains__(9) #set对象调用__contains__()
False
>>> list1.__contains__([1])
False
>>> list1.__contains__(set())
False
>>> 8 in list1 #__contains__()方法的功能与成员运算符in的功能类似
True
>>> 9 in list1
False
>>> list1.__contains__() #无参数,python抛出TypeError
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: expected 1 arguments, got 0