如何定义一个;虚假身份“;对于Python中的类
我在Python3中定义了一个类,并创建了一个“空”类对象。因此,我希望能够检查对象是否为空,就像您可以写的那样:如何定义一个;虚假身份“;对于Python中的类,python,python-3.x,Python,Python 3.x,我在Python3中定义了一个类,并创建了一个“空”类对象。因此,我希望能够检查对象是否为空,就像您可以写的那样: test = [] if not test: print('False') 我的类代码如下所示(注意,我将接受name的空值): 现在我想检查我是否有空的类: test = myClass() if not test: print('False') else: print('True') 这个案件的结果永远是真实的。如何更改此行为?向类中添加一个方法:
test = []
if not test:
print('False')
我的类代码如下所示(注意,我将接受name的空值):
现在我想检查我是否有空的类:
test = myClass()
if not test:
print('False')
else:
print('True')
这个案件的结果永远是真实的。如何更改此行为?向类中添加一个方法:
def __bool__(self):
return bool(self.name)
为适应self.name=''
且您希望返回True
的情况:
def __bool__(self):
return self.name is not False
@GinoMempin如果我得到正确的答案,我会定义uubool_uuuuuo(self),比如self==myClass()返回False,否则返回True,这样就可以了?
def __bool__(self):
return self.name is not False