python布尔类型运算_Python bool类型和比较运算符(入门必读)
Python 提供了 bool 类型来表示真(对)或假(错),比如常见的 5 > 3 比较算式,这个是正确的,在程序世界里称之为真(对),Python 使用 True 来代表;再比如 4 > 20 比较算式,这个是错误的,在程序世界里称之为假(错),Python 使用 False 来代表。
由此可见,bool 类型就是用于代表某个事情的真(对)或假(错),如果这个事情是正确的,用 True 代表;如果这个事情是错误的,用 False 代表。
比较运算符用于判断两个值(这两个值既可以是变量,也可以是常量,还可以是表达式)之间的大小,比较运算的结果是 bool 值(True 代表真,False 代表假)。
Python 支持的比较运算符如下:
>:大于,如果运算符前面的值大于后面的值,则返回 True;否则返回 False。
>=:大于或等于,如果运算符前面的值大于或等于后面的值,则返回 True;否则返回 False。
<:小于,如果运算符前面的值小于后面的值,则返回 True;否则返回 False。
<=:小于或等于,如果运算符前面的值小于或等于后面的值,则返回 True;否则返回 False。
==:等于,如果运算符前面的值等于后面的值,则返回 True;否则返回 False。
!=:不等于,如果运算符前面的值不等于后面的值,则返回 True;否则返回 False。
is:判断两个变量所引用的对象是否相同,如果相同则返回 True。
is not:判断两个变量所引用的对象是否不相同,如果不相同则返回 True。
下面程序示范了比较运算符的使用:
# 输出True
print("5是否大于 4:", 5 > 4)
# 输出False
print("3的4次方是否大于等于90.0:", 3 ** 4 >= 90)
# 输出True
print("20是否大于等于20.0:", 20 >= 20.0)
# 输出True
print("5和5.0是否相等:", 5 == 5.0)
# 输出False
print("True和False是否相等:", True == False)
上面程序简单示范了 Python 比较运算符的功能和用法。
Python 的两个 bool 值分别是 True 和 False,但实际上 True 也可被当成整数 1 使用,False 也可被当成整数 0 使用。也就是说,True、False 两个值完全可以参与各种算术运算。例如如下代码:
# 输出True
print("1和True是否相等:", 1 == True)
# 输出True
print("0和False是否相等:", 0 == False)
print(True + False) # 输出1
print(False - True) # 输出-1
关于 == 与 is 看上去很相似,但实质上有区别,== 只比较两个变量的值,但 is 要求两个变量引用同一个对象。看如下代码:
import time
# 获取当前时间
a = time.gmtime()
b = time.gmtime()
print(a == b) # a和b两个时间相等,输出True
print(a is b) # a和b不是同一个对象,输出False
上面代码中 a、b 两个变量都代表当前系统时间,因此 a、b 两个变量的时间值是相等的,故程序使用“==”判断返回 True。但由于 a、b 两个变量分别引用不同的对象(每次调用 gmtime() 函数都返回不同的对象),因此 a is b 返回 False。
实际上,Python 提供了一个全局的 id() 函数来判断变量所引用的对象的内存地址(相当于对象在计算机内存中存储位置的门牌号),如果两个对象所在的内存地址相同(相当于它们住在同一个房间内,计算机同一块内存在任一时刻只能存放一个对象),则说明这两个对象其实是同一个对象。
由此可见,is 判断其实就是要求通过 id() 函数计算两个对象时返回相同的地址。例如,使用 id() 函数判断上面的 a、b 两个变量:
print(id(a))
print(id(b))
从运行结果中将会看到 a、b 两个变量所引用的对象的内存地址是不同的,这样通过 is 来判断 a、b 两个变量自然也就输出 False 了。
python布尔类型运算_Python bool类型和比较运算符(入门必读)相关推荐
- python布尔类型运算_Python对象类型及其运算方法(详解)
基本要点: 程序中储存的所有数据都是对象(可变对象:值可以修改 不可变对象:值不可修改) 每个对象都有一个身份.一个类型.一个值 例: >>> a1 = 'abc' >> ...
- python布尔测试对象_python布尔类型和逻辑运算
布尔类型 python中True表示真,False表示假,它们是布尔类型:1 2>>> type(True) 在python中,bool的True和False是数值1和0的字符串表示 ...
- python提供的数字类型分为_Python数字类型介绍
数据类型介绍 Python数据类型可分为:数字型和非数字型 数字型 整型(int) 浮点型(float) 布尔型(bool) 真(True) 假(False) 复数型(complex) 主要用于科学计 ...
- python序列类型有_Python数值类型和序列类型
int.float.bool这三个数值类型和常用序列类型的定义和使用 数值类型的基本计算 序列类型的索引取值.切片.成员运算等序列类型的通用操作 complex(复数).decimal(定点数).ma ...
- python列表实现原理_Python动态类型实现原理及过程解析
在python中,我们使用变量时,并没有声明变量的存在和类型.类型是在运行过程中自动决定的. a = 3 python将会执行三步去完成上面这个请求. 1.创建一个对象代表3 2.创建一个变量a,如果 ...
- python语言的类型是_Python语言类型
Python是一门动态解释型的强类型语言. 对这句话进行解析,语言分为动态的和静态的,编译型和解释型的,强类型的和弱类型的语言之分. 下面对三种不同维度的类型的语言进行解释: 1.编译型和解释型 差别 ...
- python mypy类型检查_Python中类型检查的详细介绍
前言 大家都知道Python 是一门强类型.动态类型检查的语言.所谓动态类型,是指在定义变量时,我们无需指定变量的类型,Python 解释器会在运行时自动检查. 与静态类型语言(如 C 语言)相比,这 ...
- python中类的构成_Python中类型关系和继承关系实例详解
本文详细介绍了Python中类型关系和继承关系.分享给大家供大家参考.具体分析如下: 如果一个对象A持有另一个对象B的ID,那么检索到A之后就可以检索到B,我们就说存在一个A到B的导航.这种导航关系使 ...
- python定义整数型变量_Python变量类型有哪些?Python变量声明介绍
变量不过是用于定义,存储和对输入数据执行操作的编程元素.Python变量类型有哪些?Python变量有四种不同类型,它们是Integer,LongInteger,Float和String.整数用于定义 ...
最新文章
- Cisco HSRP热备份路由器协议配置
- 网站建设ASP中UTF-8与GB2312编码转换乱码问题的解决方法
- 把普通的git库变成bare库
- linux内核中kset是什么意思,Linux内核之设备驱动-底层数据结构kobject/kset
- 用VSTS进行网站压力测试
- 惊天后续 | 不仅可看照片和短信, 利用 iOS 漏洞无需密码还能打电话、发短信!...
- noip模拟赛 猜数字
- CentOs7安装Oracle11g中的坑
- MAC使用find命令的正确办法
- 单片微型计算机原理及应用第三版课后答案,单片微型计算机原理及应用 - 课后习题答案 - 山东理工...
- 如何用MFC做漂亮的界面
- K60学习笔记(二)——FTM多功能定时器模块
- 侠客行,我是谁,谁是我
- 一文了解plc编程、电脑编程、手机APP编程、组态编程、云编程(下)
- php导出合同模板到excel
- 零管理费的基金你见过吗?基金行业价格战预演
- MIPS,程序的CPI,时钟周期计算(主频的计算)
- ktv管理系统_著作权大数据管理平台开始公测 或将解决KTV行业版权困扰
- ubuntu安装deb文件包
- windous 向日葵连接 ubuntu 向日葵失败