开发者

聊聊python 逻辑运算及奇怪的返回值(not,and,or)问题

首先,‘and’、‘or’和‘not’的优先级是not>and>or。

同一优先级从左往右计算。

先说非运算,python的非运算与这些语言相比编程客栈,并没有特别的地方。not只编程客栈有两个返回值,True和False。在Python中,真值为假的对象,包括False,None,数字0,空字符串以及空的容器类型。除此以外的任何对象均为真。

接下来是与运算,Python的与(and)运算的规则是

若左边的表达式为真,则返回右边表达式的值

否则,返回左边表达式的值

最后再来说或运算,Python的或(or)运算的规则是

若左边的表达式为真,则返回左边的表达式的值

否则,返回右边的表达式的值

用代码来感受一下吧:

聊聊python 逻辑运算及奇怪的返回值(not,and,or)问题

聊聊python 逻辑运算及奇怪的返回值(not,and,or)问题

那现在我们再加入优先级相关的混合运算:

聊聊python 逻辑运算及奇怪的返回值(not,and,or)问题

#首先 not 的优先级最高那么not 8 返回False

#(False orwww.cppcns.com 3 and 4 or 2 and 0 http://www.cppcns.comor 9 and编程客栈 7 )

#接下来的优先级是and

#(False or 4 or 0 or )

#最后or 返回真值 4

到此这篇关于python 逻辑运算及奇怪的返回值(not,and,or)的文章就介绍到这了,更多相关python 逻辑运算内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新开发

开发排行榜