为了与Python 2-3兼容,只需将其添加到示例中:
Foo.__nonzero__ = Foo.__bool__
或将Foo的原始定义扩展为包括:
__nonzero__ = __bool__
当然,您也可以反过来定义它们,方法名称在哪里,
__nonzero__然后将其分配给
__bool__,但是我认为该名称
__nonzero__只是Python根据其与对象的等价性将对象解释为真或假的原始C-
ishness的遗产。零。只需添加上面的语句,您的代码即可在Python 2.x上运行,并且在升级到Python
3.x后(最终将其分配到
__nonzero__)自动运行。



