python布尔类型关于and和or用法说明马克
来源:互联网 发布:前往文件夹 mac 编辑:程序博客网 时间:2024/05/03 14:58
在Python中,布尔类型还可以与其他数据类型做 and、or和not运算,请看下面的代码:
a = Trueprint 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解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。
来自慕课网 马克一下
2 0
- python布尔类型关于and和or用法说明马克
- Python-回文检测和布尔操作(and,or,not)
- python中and和or的用法
- python关键字and和or用法实例
- python中 and和or用法
- python and 和 or的用法
- python 中 and 和 or 的用法
- python and-or 用法
- python and or用法
- Python and-or例子说明
- [Python]整数和浮点数,布尔类型
- 布尔类型判断-python
- python 布尔类型
- Python中的布尔类型
- Python中布尔类型
- Python中的布尔类型
- Python中布尔类型
- Python中布尔类型
- hibernate5.0.12数据持久化框架使用第一例
- 安卓开发之使用Mob的短信接收验证码达到忘记密码找回密码功能*(自绘界面)
- oracle 表约束的添加、修改以及约束的禁用启用
- 206. Reverse Linked List
- springmvc局部异常
- python布尔类型关于and和or用法说明马克
- eclipse中配置的tomcat 启动正常 但是访问报404错误
- 扒一扒Xcode中的编译标识: -Werror= -Wunused-variable
- Xcode8真机调试测试NSLog不输出日志
- bzoj 2095: [Poi2010]Bridges (二分+最大流+欧拉图)
- 83. Remove Duplicates from Sorted List
- Python字符串的认知与应用
- 组合公式
- 设计模式(2)-工厂方法模式