Python中布尔类型
我们已经了解了Python支持布尔类型的数据,布尔类型只有True和False两种值,但是布尔类型有以下几种运算:
与运算:只有两个布尔值都为 True 时,计算结果才为 True。
True and True # ==> True
True and False # ==> False
False and True # ==> False
False and False # ==> False
或运算:只要有一个布尔值为 True,计算结果就是 True。
True or True # ==> True
True or False # ==> True
False or True # ==> True
False or False # ==> False
非运算:把True变为False,或者把False变为True:
not True # ==> False
not False # ==> True
布尔运算在计算机中用来做条件判断,根据计算结果为True或者False,计算机可以自动执行不同的后续代码。
在Python中,布尔类型还可以与其他数据类型做 and、or和not运算,请看下面的代码:
a = True
print a and 'a=T' or 'a=F'
计算结果不是布尔类型,而是字符串 'a=T',这是为什么呢?
因为Python把0、空字符串''和None看成 False,其他数值和非空字符串都看成 True,所以:
True and 'a=T' 计算结果是 'a=T'
继续计算 'a=T' or 'a=F' 计算结果还是 'a=T'
要解释上述结果,又涉及到 and 和 or 运算的一条重要法则:短路计算。
1. 在计算 a and b 时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。
2. 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。
所以Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。
a = 'python'
print 'hello,', a or 'world'
b = ''
print 'hello,', b or 'world'
运行以上代码,结果是:hello, python hello, world 你能根据短路计算法则看懂么?
转载于:https://www.cnblogs.com/gouchaonan/p/5968056.html
Python中布尔类型相关推荐
- Python中布尔类型 短路计算原理
Python支持布尔类型的数据,布尔类型只有True和False两种值,但是布尔类型有以下几种运算: 与运算:只有两个布尔值都为 True 时,计算结果才为 True. True and True # ...
- 在python中布尔类型的值包括_Python中布尔类型
我们已经了解了Python支持布尔类型的数据,布尔类型只有True和False两种值,但是布尔类型有以下几种运算: 与运算:只有两个布尔值都为 True 时,计算结果才为 True. True and ...
- python中布尔类型是特殊的什么类型_Python中布尔类型
标签: 我们已经了解了Python支持布尔类型的数据,布尔类型只有True和False两种值,但是布尔类型有以下几种运算: 与运算:只有两个布尔值都为 True 时,计算结果才为 True. True ...
- python中布尔类型是特殊的_Python中的特殊方法以及应用详解
前言 Python 中的特殊方法主要是为了被解释器调用的,因此应该尽量使用 len(my_object) 而不是 my_object.__len__() 这种写法.在执行 len(my_object) ...
- python中布尔类型的值包括_Python 布尔值(Booleans)
1.布尔值(Booleans) 在编程中,您通常需要知道表达式是True还是False. 您可以评估Python中的任何表达式,并获得两个答案之一,True或False. 比较两个值时,将对表达式求值 ...
- python布尔类型运算_Python中布尔类型
我们已经了解了Python支持布尔类型的数据,布尔类型只有True和False两种值,但是布尔类型有以下几种运算: 与运算:只有两个布尔值都为 True 时,计算结果才为 True. True and ...
- python输出布尔值true_关于python中bool类型的重要细节
原标题:关于python中bool类型的重要细节 0. 导读 大家好,欢迎来到 Crossin的编程教室 ! 布尔类型是Python中必不可少的一种数据类型.它看起来很简单,仅包括True和False ...
- 全面理解Python中的类型提示(Type Hints)
众所周知,Python 是动态类型语言,运行时不需要指定变量类型.这一点是不会改变的,但是2015年9月创始人 Guido van Rossum 在 Python 3.5 引入了一个类型系统,允许开发 ...
- python中布尔变量的值为_python 布尔操作实现代码 python是如何定义并使用变量的...
python中怎么定义一个布尔类型的变量我要记住这一个半小时的车程,我要记住每一个红灯和颠簸,我要记住你手臂的温度.甚至希望旅途变长,天色变暗,暴雨如注,可与你再度过一个夜晚. 直接定义a=True/ ...
最新文章
- 2021年大数据Kafka(九):kafka消息存储及查询机制原理
- 转载 iOS js oc相互调用(JavaScriptCore) --iOS调用js
- ORB特征提取策略对ORB-SLAM2性能的影响
- 两节点的最小公共祖先LCA
- log4j源码阅读(一)之Logger
- unity 4种实现动态障碍方法
- k 最近邻_k最近邻与维数的诅咒
- 英语笔记:写作:Limiting the use of disposable plastic bags
- 经验之谈—让你看明确block
- mvn命令编译GeoServer源代码
- win10更新 vm14用不了
- setup factory 设置默认字段的值
- java wifi开发教程_WiFi技术
- 低功耗高精度性能稳定 智芯传感ZXP0压阻式大气压力传感器适用多个领域
- 数学分析原理 定理 6.10
- Spring JDBC 访问数据库
- aspf ftp_FTP主动模式和被动模式
- vue引入51la流量监控
- 【Debug日记】fatal: cannot lock ref ‘refs/heads/feature/CXX_Config‘: ‘refs/heads/feature‘ exists;
- Meter Bus解析1:概述