前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python数据类型——逻辑值详解

Python数据类型——逻辑值详解

作者头像
用户7886150
修改2021-01-22 18:04:50
1.7K0
修改2021-01-22 18:04:50
举报
文章被收录于专栏:bit哲学院bit哲学院

参考链接: Python数据类型

上一篇文章:Python数据类型——数值型详解 

 【python&&数学】心形线

  这是用Python结合数学函数画出来的各种心形线。情人节快到了,可以拿来送给自己的女朋友哟。源码来自GitHub:turtle-cardioid。 

 文章目录

 本篇简介逻辑值逻辑(bool)类型简介判断与真值逻辑运算与(and)运算或(or)运算非(not)运算

   逻辑运算符的优先级各种类型对应的真值

  写在前面:大家好!我是ACfun,我的昵称来自两个单词Accepted和fun。由于最近在学习python,学了一遍感觉不是特别条理,所以我想整理一个有关python基础的系列的文章。希望自己通过这次的整理可以对python有一个较为清晰的理解和认识。如果有不足或者的错误的地方欢迎在评论区或者私信我指正,感谢大家的不吝赐教。我的唯一博客更新地址是:https://ac-fun.blog.csdn.net/。非常感谢大家的支持。  用知识改变命运,用知识成就未来。加油 (ง •̀o•́)ง (ง •̀o•́)ง 

本篇简介 

 在上一篇博客:Python数据类型——数值型详解 中介绍了Python数据类型中数值型部分。本篇我们来一块学习一下Python数值类型的逻辑值与字符串部分。 

逻辑值 

逻辑(bool)类型简介 

 bool表示布尔型变量,也就是逻辑型变量的定义符,以英国数学家、布尔代数的奠基人乔治·布尔(George Boole)命名。乔治·布尔发明了逻辑值以及逻辑值之间的运算体系。  bool仅包含真(True)/假(False)两个值,0为False,非0为True。(例如-1和2都是True),在逻辑值运算中为:非真既假。 

 注意:光理论是不够的,在此送大家一套2020最新Python全栈实战视频教程。发现了一个免费的资料群,不是博主建的嗷,但是资料很好,点击此处 进来获取一起进步哦! 

判断与真值 

 逻辑类型经常用来配合if/while等语句进行条件判断,如果逻辑值为真,那么控制流会做相应的操作;逻辑值为假,则会做另一种操作。  

逻辑运算 

 逻辑运算又称布尔运算。布尔用数学方法研究逻辑问题,成功地建立了逻辑演算。布尔逻辑运算符 and, or 和 not 都是 Python 关键字,这些运算符的优先级按从高到低的顺序。not 运算符拥有最高优先级,只比所有比较运算符低一级。 and 和 or 运算符则相应的再低一级。and 和 or是双目运算,由两个表达式进行运算。not是单目运算,作用于一个逻辑值的运算,而且not 要放在逻辑值的前面。  

与(and)运算 

 and连接的值需要同时为真,计算结果才为真,否则得到的结果就为假。and具有惰性求值或逻辑短路的特点,当连接多个表达式时只需计算必须要计算的值。我们可以这样理解,就是expr1 and expr2,如果表达式expr1的值为假,那么后面的表达式expr2不会被计算到,这个表达式的内容直接为假。如果expr1为真,那么计算机会继续判断后面的expr2是否为真,如果为真,那么表达式为真。另外要注意:and并不一定会返回True或者False,而是得到最后一个计算的表达式的值 

  例如我们在Python自带的shell中计算一下不同表达式的值。我们这里直接将每个表达式的结果记为True或者False。 

>>> True and True

True

>>> True and False

False

>>> False and True

False

>>> False and False

False

>>> 5 and 6

6

>>> True and 5

5

>>> False and 5

False

>>> 1 and False

False

>>> True and True and False

False

>>> False and True and True and False

False

或(or)运算 

 or连接的值只要有一个为真,计算结果就为真,全部为假计算结果才为假。同样or也像and一样具有惰性求值或逻辑短路的特点。or也不一定会返回True或者False,而是得到最后一个计算的表达式的值  

>>> True or True

True

>>> True or False

True

>>> False or True

True

>>> False or False

False

>>> 5 or 6

5

>>> False or 6

6

>>> False or True or True

True

>>> True or True or False

True

>>> False or False or False

False

非(not)运算 

 not只连接一个值,非真为假,非假为真。意思是not连接一个真值,那么得到的结果就为假;连接一个假值,结果就为真。  

>>> not True

False

>>> not False

True

>>> not (True and False)

True

>>> not (True or False)

False

>>> not (False or False)

True

逻辑运算符的优先级 

 and or not 三个运算符的优先级上面提到过一点,具体的优先级为: 

 not 最高,and 次之,or 最低 

在实际的编程中,我们建议使用括号来表示优先级,这样可以使我们的代码可读性更高,比如上面的not 的例子。 

各种类型对应的真值 

 除了做条件判断得到的逻辑值,其他的数据类型也可以得到真值。 

整数、浮点数和复数类型 

 0为“假”,所有的非0的数值都是“真” 

字符串类型 

 空串("")为假,所有的非空串为真 

所有的序列类型(列表、元组以及上面所提到的字符串) 

 空序列为假,所有的非空序列为真。 

空值None 

 表示“无意义”、“没有值”,也是假。None的值是一个空对象,空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。可以将None赋值给任何变量。如果我们将None赋值给一个对象,可以将其值置空。 

>>> type(None)

<class 'NoneType'>

>>> type(0)

<class 'int'>

注意:最后送大家一套2020最新企业Pyhon项目实战视频教程。这是一个免费的资料群,不是博主建的嗷,但是资料很好,点击此处 进来获取一起进步哦! 

参考资料: 

中国大学生慕课——Python语言基础与应用Python中的None与Null(空字符)的区别Python None(空值)及用法 

 未完待续,持续更新中……

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档