我理解0
代表false
而1
代表true
,因此not 1
代表false
和not 0
意味着是真的,但对于not 3
not 4
之类的东西,为什么它们是false
?因为not 3
有可能成为1
。
答案 0 :(得分:1)
那是计算机逻辑。通过0和1的组合将所有内容引入到机器中。每个逻辑都有2个面False
和True
,它们由0和1表示。所以基本上是0和1,Python用它来评估布尔对象,不完全是一些整数。 bool
对象本身只是int
的子类,具有不同的属性,如表示和缺少大量整数的属性。
关于python中的Truth Value Testing:
可以测试任何对象的真值,用于if或while条件或下面布尔运算的操作数。以下值被视为false:
''
,()
,[]
。{}
。用户定义类的实例,如果类定义了
__nonzero__()
或__len__()
方法,则该方法返回整数零或bool值为False。所有其他值都被认为是真的 - 因此许多类型的对象始终为真。