ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python系列教程145——布尔运算

2022-01-20 12:02:33  阅读:178  来源: 互联网

标签:返回 操作数 145 False 布尔运算 python 运算符 Python 对象


朋友们,如需转载请标明出处:https://blog.csdn.net/jiangjunshow

声明:在人工智能技术教学期间,不少学生向我提一些python相关的问题,所以为了让同学们掌握更多扩展知识更好地理解AI技术,我让助理负责分享这套python系列教程,希望能帮到大家!由于这套python教程不是由我所写,所以不如我的AI技术教学风趣幽默,学起来比较枯燥;但它的知识点还是讲到位的了,也值得阅读!想要学习AI技术的同学可以点击跳转到我的教学网站。PS:看不懂本篇文章的同学请先看前面的文章,循序渐进每天学一点就不会觉得难了!

Python的布尔运算与C语言是有区别的!

在Python中:
•任何非零数字或非空对象都为真。
•数字零、空对象以及特殊对象None都被认作是假。
•比较和相等测试会递归地应用在数据结构中。
•比较和相等测试会返回True或False(1和0的特殊版本)。
•布尔and和or运算符会返回真或假的操作对象。

Python中有三种布尔表达式运算符:
X and Y
如果X和Y都为真,就是真。
X or Y
如果X或Y为真,就是真。
not X
如果X为假,那就是真(表达式返回True或False)。

布尔运算符在Python中是英文单词(在C语言中是符号&&、||和!)。此外,布尔and和or运算符在Python中会返回真或假对象,而不是值True或False。我们来看一些例子,来了解它是怎样工作的。

>>> 2 < 3,3 < 2        # Less-than: return True or False (1 or 0)

(True,False)

在Python中像这类值的比较会返回True或False作为其真值结果。

而and和or运算符会返回对象,不是运算符左侧的对象,就是右侧的对象。

就or测试而言,Python会由左至右求算操作对象,然后返回第一个为真的操作对象。再者,Python会在其找到的第一个真值操作数的地方停止。这通常叫做短路计算:

>>> 2 or 3,3 or 2      # Return left operand if true

(2,3)      

>>> [] or 3

3

>>> [] or {}

{}

上一个例子的第一行中,2和3两个操作数都是真(非零),所以Python在左边操作数停止并返回这个操作数。在另外两个测试中,左边的操作数为假(空对象),所以Python只会计算右边的操作数并将其返回。

and运算会由左至右计算操作数,并且停在第一个为假的对象上:

>>> 2 and 3,3 and 2      # Return left operand if false

(3,2)    

>>> [] and {}

[]

>>> 3 and []

[]

在这里,第一行的两个操作数都是真,所以Python会计算两侧,并返回右侧的对象。在第二行中,左侧的操作数为假([]),所以Python会在该处停止并将其返回作为结果。在最后一行中,左边为真(3),所以Python会计算右边的对象并将其返回(碰巧是假的[])。

这些最终的结果其实都和C及其他多数语言相同:如果在if或while中,你会得到相等的逻辑真或假。只不过在Python中,布尔返回左边或右边的对象,而不是简单的整数标志位而已。

标签:返回,操作数,145,False,布尔运算,python,运算符,Python,对象
来源: https://blog.csdn.net/jiangjunshow/article/details/122598273

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有