美文网首页
python的特殊方法__nonzero__

python的特殊方法__nonzero__

作者: 大明白 | 来源:发表于2015-11-03 16:21 被阅读1430次

    类的nonzero方法用于将类转换为布尔值。通常在用类进行判断和将类转换成布尔值时调用。比如语句if A: print 'foo'中就会调用A.nonzero()来判断。下面这个程序应该能帮助你理解nonzero的作用。

    class A:
      def __nonzero__(self):
        print 'A._nonzero__()'
        return True
    
    print 'A is not zero' if A() else 'A is zero'
    print bool(A())
    

    output:

    A._nonzero__()
    A is not zero
    A._nonzero__()
    True

    相关文章

      网友评论

          本文标题:python的特殊方法__nonzero__

          本文链接:https://www.haomeiwen.com/subject/vuvqhttx.html