python3基础05布尔类型和比较运算符

作者: pythonic生物人 | 来源:发表于2020-07-24 21:16 被阅读0次

本文介绍python中布尔运算和比较运算符使用。
首发于本人公众号:pythonic生物人

更好的阅读体验请戳:

python3基础05布尔类型和比较运算符


目录

1、布尔类型
布尔类型简介
布尔运算

2、比较运算
比较运算简介
比较运算符
连续比较

1、布尔类型

布尔类型简介

  • python中布尔类型有两种,真True和假False,True和False等价于数值1和0,可以直接参与运算;
In [20]: True + 2
Out[20]: 3

In [21]: False + 2
Out[21]: 2
  • True和Fasle用于控制结构中决定程序继续执行还是中断;
  • bool函数用于判断一个对象是真还是假,一个python对象要么是True要么是Fasle;
  • python视为假的内置对象如下:
  1. 常量: None 和 False。
  2. 数值类型的零: 0, 0.0, 复数中0j, 四舍五入中Decimal(0), 分数中Fraction(0, 1)
  3. 空的序列和多项集: '', (), [], {}, 空集合set(), range(0)
In [15]: bool(0j)
Out[15]: False

In [16]: bool(1)
Out[16]: True

In [17]: bool(0)
Out[17]: False

In [18]: bool(None)
Out[18]: False

In [19]: bool(False)
Out[19]: False

布尔运算

布尔运算结果常作为控制结构(if while)的条件,用于判断程序中断还是继续执行;三个布尔运算符:and(且),or(或),not(否)。

  • a and b:a和b均为真,返回真。短路运算符,如果a为假,不会再判断b;如果a为真再判断b。
  • a or b:a和b有一个为真,返回真。短路运算符,如果a为假再判断b;如果a为真,不会判断b。
  • not a:取a真或假的反面;not运算符优先级低,not a == b 等价于 not (a == b)。
In [51]: 1 and 2#and为短路运算,1为真,再检测2也为真,整个表达式输出2,即为真
Out[51]: 2

In [52]: [] and 2#[]为假,表达式短路,输出[]
Out[52]: []

In [53]: [] or 2#[]为假,在检测[]
Out[53]: 2

2、比较运算

比较运算简介

返回True或者Fasle;

In [30]: 1 < 2
Out[30]: True

In [31]: 1 == 2
Out[31]: False

不同类型的对象不能比较,强行比较会报错。

In [32]: 1 < "x"
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-32-055a687f025c> in <module>
----> 1 1 < "x"

TypeError: '<' not supported between instances of 'int' and 'str'

比较运算符

各个比较运算符优先级相同,但是比布尔运算符的优先级高。

比较运算符           含义
小于              <
小于等于            <=
等于              ==
不等于             !=
大于              >
大于等于            >=
对象标识            is
否定的对象标识     is not

实例

In [40]: 1 is 2
Out[40]: False

In [41]: 1 is 1
Out[41]: True

In [42]: 1 == 2
Out[42]: False

In [43]: 1 == 1
Out[43]: True

In [44]: 1 is not 2
Out[44]: True

In [45]: 1 != 2
Out[45]: True

In [46]: "a" is "b"
Out[46]: False

In [47]: "a" is not "b"
Out[47]: True

In [50]: [1, 2, 1] < [1, 3, 0]#两个列表比较,从左到右一个一个比较。
Out[50]: True

连续比较

a < b < c,等价于a < b and b < c。

In [48]: 1 < 0 < 3#等价于1 < 0 and 0 < 3
Out[48]: False

参考资料

https://docs.python.org/zh-cn/3.7/library/stdtypes.html#boolean-operations-and-or-not

干货,真香

相关文章

  • python3基础05布尔类型和比较运算符

    本文介绍python中布尔运算和比较运算符使用。首发于本人公众号:pythonic生物人 更好的阅读体验请戳: p...

  • 比较运算符

    比较运算符(相等的运算符 ==) 布尔类型 Python 中的另一种类型是布尔类型。有两个布尔值:True 和 F...

  • 2.29丨逻辑与运算符

    布尔类型 Booleans True False比较:等于运算符(==)、大于运算符(>)、小于运算符(<)、大于...

  • JS基础(二)

    // 值的比较 // 比较结果为 Boolean 类型 // 所有比较运算符均返回布尔值: // true —— ...

  • JavaScript 时间对象、引用类型

    基础类型和复杂类型 基础类型有 数值型、布尔型、字符串、null和undefined;特征是都比较简单,占用空间小...

  • JavaScript——布尔值

    原始布尔类型包含值true和false。以下运算符产生布尔值: 二进制逻辑运算符:&&(And),||(Or) 前...

  • Solidity 语法学习

    一 类型 值类型 布尔类型bool: true false!&&||==!= 运算符|| 和 &&都遵循同样的短路...

  • 2-2-1 简介

    数据类型和运算符欢迎学习数据类型和运算符课程!你将学习: 数据类型:整型、浮点型、布尔型、字符串、列表、元组、集合...

  • web前端入门到实战:js函数与作用域,了解函数基本概念

    通过js基础语法了解到js的值包含数字,字符串和布尔值;js运算符分为算数,赋值,比较和逻辑运算符;js的流程控制...

  • 02+03流程图和函数

    02Flow control 流程图,布尔值,比较运算符,布尔运算符 Boolean value 布尔值Unlik...

网友评论

    本文标题:python3基础05布尔类型和比较运算符

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