Python的布尔型

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Jerry_1126/article/details/82926353

Python的布尔型,也就是bool原本是一个数字,因为它有两个值True和False,不过是整数1和0以不同形式显示后的定制版本而已。如今Python正式地有了一种明确的布尔型数据类型,叫做bool,其值为True和False,并且其值True和False是预先定义的内置变量名。在内部,新的变量名True和False是bool的实例。实际上仅仅是内置的整数类型int的子类。 

True和False的行为和整数1和0是一样的,除了它们特定的显示逻辑:它们是作为关键字True和False显示的,而不是数字1和0。由于这个定制,布尔表达式在交互提示模式的输出就作为关键字True和False来显示,而不是曾经的1和0。此外,布尔型让真值更精确。例如,一个无限循环现在能够编写成while True: 而不是while 1:。类似地,通过使用flag = False,可以更清楚的,设置标志位。

还有其他的实际用途,你能够将True和False看做事预定义的设置为整数1和0的变量。 大多数程序员都曾把True和False预先赋值为1和0,所以新的类型简单地让这个行为成为实际的标准。尽管它的实现能够导致奇怪的结果: 因为True仅仅是定制了显示格式的整数1,在Python中True+4得到的是5! 

简单示例

>>> type(True)                # True是bool类型
<class 'bool'>

>>> type(False)               # True是bool类型
<class 'bool'>

>>> isinstance(True, int)     # True和False是bool类型的实例
True

>>> True == 1                 # 值相等            
True

>>> True is 1                 # 但非同一个对象
False

>>> True or False             # 等同于1 or 0
True

>>> True + 4                  # 相当于1 + 4
5

>>>

猜你喜欢

转载自blog.csdn.net/Jerry_1126/article/details/82926353
今日推荐