all()函数——判断可迭代对象是否包含假值
假值即0,空,False,除此之外都是真值
all()函数可用于判断列表,子典等可迭代对象是否全是真值,只要有1个假值,则返回值为False,即一假全假。
注意点:
1.如果可迭代对象的个数是0时,返回之时Ture。
2.字典的value是0时,返回值是Ture。
用途:检验用户名和密码是否全都相等。
应用:
class HTTPBasicAuth():
def __init__(self, username, password):
self.username = username
self.password = password
def __eq__(self, other):
return all([self.username == getattr(other, 'username', None),
self.password == getattr(other, 'password', None)])
def __ne__(self, other):
return not self == other
class User():
def __init__(self, username, password):
self.username = username
self.password = password
auth = HTTPBasicAuth("andy", '123456')
user01 = User('andy', '123567')
user02 = User('andy', '123456')
print(auth == user01)
print(auth == user02)