python关系运算符和逻辑运算符的优先级_python中逻辑运算符的优先级问题

遇到的问题

今天做题的时候,碰到一个关于逻辑运算符优先级的问题,看到之后我懵了

0 and 1

2 and 3

0 or 1

2 or 3

上面的返回值是什么?

我一开始以为返回的都是左边的值,但是结果和我想的不同,结果如下:

In [4]: 0 and 1

Out[4]: 0

In [5]: 2 and 3

Out[5]: 3

In [6]: 0 or 1

Out[6]: 1

In [7]: 2 or 3

Out[7]: 2

为什么 0 and 1 返回的是 0 , 而2 and 3却返回的是3?

为什么 0 or 1 返回的是 1 , 而 2 or 3却返回的是2?

经过我不断地额翻阅资料,我找到了答案。

首先要明白以下2点:逻辑运算符的优先级:not > and > or

Python中所有的空字符串都是假,非空字符串都是真,非零的数字都是真

关于and:只要左边的表达式为真,那么整个表达式返回的是右边表达式的值,否则返回的是左边表达式的值

换言之,x and y 的值只能是x 和 y,x为真时就是y,x为假就是x,示例如下:

In [1]: x=1

In [2]: y=2

In [3]: x and y

Out[3]: 2

In [4]: x=0

In [5]: y=1

In [6]: x and y

Out[6]: 0

关于or:只要两边的表达式都为真,整个表达式的结果返回的是左边表达式的值;

如果一真一假,返回真值表达式的值;

如果两个值都假,比如空值和0,返回的是右边的值

换言之,x or y 的值只可能是 x 和 y,x为真就是x,x为假就是y,示例如下:

In [7]: x=1

In [8]: y=0

In [9]: x or y

Out[9]: 1

In [10]: x='hello'

In [11]: y='world'

In [12]: x or y

Out[12]: 'hello'

In [13]: x=''

In [14]: y=0

In [15]: x or y

Out[15]: 0

关于not:x为真,则输出False

x为假,则输出True

当not和and及or在一起运算时,优先级为是not>and>or,下面来看下3个逻辑运算符一起使用的结果:

In [18]: (5>3) and (2>4) or not 6<7

Out[18]: False

In [19]: (5>3) and (2<4) or not 6<7

Out[19]: True

In [20]: (5>3) and (2<4) or not 6>7

Out[20]: True

希望对大家有帮助,也是对自己遇到的问题的记录。

参考链接

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/488558.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

编程面试题之——简答题(持续更新...)

简答题&#xff1a; 1、try{}里有一个return语句&#xff0c;那么紧跟在这个try后的finally{}里的代码会不会被执行&#xff0c;什么时候被执行&#xff0c;在return前还是后? 答&#xff1a;会执行&#xff0c;在方法返回调用者前执行。注意&#xff1a;在finally中改变返回值…

如何避免字符串混淆加密_iOS-代码混淆加固方案

对于iOS来说&#xff0c;由于系统是封闭的&#xff0c;APP上架需要通过App Store&#xff0c;安全性来说相当高。但是对于大厂和知名APP而言&#xff0c;别人给的安全保障永远没有自己做的来得踏实。所以对于大厂、少部分企业级和金融支付类应用来说加固是相当重要的。下面是目…

DARPA计划在2021年开展多种新型武器概念研究

来源&#xff1a;中国指挥与控制学会“远射”项目DARPA计划于2021年投资2200万美元启动“远射”项目&#xff0c;演示一种空射武器系统。该系统由速度较慢的远程飞行器搭载至战区&#xff0c;在战区上空发射多枚空空导弹来实施作战。该武器可由现有战斗机外部挂载&#xff0c;或…

python算法实现源码_Python实现七个基本算法

1.顺序查找当数据存储在诸如列表的集合中时&#xff0c;我们说这些数据具有线性或顺序关系。 每个数据元素都存储在相对于其他数据元素的位置。 由于这些索引值是有序的&#xff0c;我们可以按顺序访问它们。 这个过程产实现的搜索即为顺序查找。顺序查找原理剖析&#xff1a;从…

多重边框

div {box-shadow: 0 0 0 6px rgba(0, 0, 0, 0.2), 0 0 0 12px rgba(0, 0, 0, 0.2), 0 0 0 18px rgba(0, 0, 0, 0.2), 0 0 0 24px rgba(0, 0, 0, 0.2); height: 200px; margin: 50px auto; width: 400px } 转载于:https://www.cnblogs.com/yk-ontheway/p/6737698.html

python词云设计实例_python词云库wordcloud的使用方法与实例详解

wordcloud是优秀的词云展示第三方库一、基本使用 import jieba import wordcloud txt open("1.txt", "r", encodingutf-8).read() words jieba.lcut(txt) txt_1 " ".join(words) # print(txt1) w wordcloud.WordCloud(font_path"msyh.t…

细胞因子风暴与新冠肺炎

来源&#xff1a;陈辉科学网博客链接地址&#xff1a;http://blog.sciencenet.cn/blog-3426569-1219679.html 2020年2月15日下午&#xff0c;在国务院联发联控机制新闻发布会上&#xff0c;周琪院士介绍说“炎症因子风暴”[作者注释&#xff1a;即是细胞因子风暴&#xff08;Cy…

mysql 启动 修改密码_基础的启动/停止/重启/密码修改MySQL

如何启动/停止/重启MySQL一、启动方式1、使用 service 启动&#xff1a;service mysqld start2、使用 mysqld脚本启动&#xff1a;/etc/inint.d/mysqld start3、使用 safe_mysqld启动&#xff1a;safe_mysqld&二、停止1、使用 service 启动&#xff1a;service mysqldstop2…

预编译对象解决SQL注入问题

转载于:https://www.cnblogs.com/suanshun/p/6739454.html

eclipse中添加jar包后运行时提示noclassdeffounderror_一看你就懂,超详细 java 中的 ClassLoader 详解,耐心看~...

备注&#xff1a;本文篇幅比较长&#xff0c;但内容简单&#xff0c;大家不要恐慌&#xff0c;安静地耐心翻阅就是Class文件的认识我们都知道在Java中程序是运行在虚拟机中&#xff0c;我们平常用文本编辑器或者是IDE编写的程序都是.java格式的文件&#xff0c;这是最基础的源码…

寻找人机之间的中间地带-评述3本人机协作的书

来源&#xff1a; 混沌巡洋舰1 AI 错觉知其然&#xff0c;更要知其所以然&#xff0c;了解数据挖掘的算法的基础原理&#xff0c;可以在这个人工智能和大数据可能比工业革命更能改变人的一生的历史时期中&#xff0c;更有智慧的应用人工智能。AI错觉这本书18年在美国出版&#…

TypeError: HashUpdate fail

关于crypto的md5加密报错&#xff1a; 代码&#xff1a; var crypto require(crypto); var md5 crypto.createHash(md5); //crypto模块功能是加密并生成各种散列 var oldpass md5.update(oldpass).digest(hex); var newpass md5.update(newpass).digest(hex);如果md5.updat…

mysql 与gemfire的同步_(转)分布式缓存GemFire架构介绍

1什么是GemFireGemFire是一个位于应用集群和后端数据源之间的高性能、分布式的操作数据(operational data)管理基础架构。它提供了低延迟、高吞吐量的数据共享和事件分发。GemFire充分利用网络中的内存和磁盘资源&#xff0c;形成一个实时的数据网格(data fabric or grid)。Gem…

混合云关键技术能力和发展趋势

来源&#xff1a;IDC圈为满足成本、按需、隐私、合规、避免供应商锁定等目的&#xff0c;企业常常会采用多个公有云或私有云&#xff0c;这会造成基础设施资源池多样化&#xff0c;还要面临同时管理物理机、虚拟化等异构资源环境。多云管理由于面临同时管理物理机、虚拟化等异构…

文字竖着写怎么设置_微信置顶文字怎么设置 微信置顶文字的方法介绍|微信|置顶软硬件资讯川北在线...

阅读本文前&#xff0c;请您先点击上面的“蓝色字体”&#xff0c;再点击“关注”&#xff0c;这样您就可以继续免费收到文章了。每天都会有分享&#xff0c;都是免费订阅&#xff0c;请您放心关注。注&#xff1a;本文转载自网络&#xff0c;不代表本平台立场&#xff0c;仅供…

DOM查找元素的方法总结

按HTML查找&#xff1a;优点&#xff1a;范围可大可小&#xff0c;可设置条件&#xff1b;包括五种方式&#xff1a;1.按id查找&#xff1b;2.按标签名查找&#xff1a;var elems parent.getElementsByTagName();3.按name属性查找&#xff1a;要回传给服务器的元素需要name属性…

java rsa 公钥加密_java – 使用公钥进行RSA解密

Java已经有了Java Cryptography Extension Framework,它就是为这些东西设计的.BouncyCastle是此框架的加密提供程序.这意味着,它为您的Java Cryptography Extension提供了加密算法的实现.您将在java.security和javax.crypto包中找到相关的基本类要使用公钥解密您的邮件,您可以尝…

2019 NLP大全:论文、博客、教程、工程进展全梳理(长文预警)

来源&#xff1a;机器学习研究会订阅号在整个2019年&#xff0c;NLP领域都沉淀了哪些东西&#xff1f;有没有什么是你错过的&#xff1f;如果觉得自己梳理太费时&#xff0c;不妨看一下本文作者整理的结果。2019 年对自然语言处理&#xff08;NLP&#xff09;来说是令人印象深刻…

collection集合 地址_java集合系列(5)LinkedList

这篇文章开始介绍LinkList。他和ArrayList有一些相似&#xff0c;在上一篇文章讲解 ArrayList时&#xff0c;我们知道ArrayList是以数组实现&#xff0c;它的优势是查询性能高&#xff0c;劣势是按顺序增删性能差。如果在不确定元素数量的情况时&#xff0c;不建议使用ArrayLis…

meanshift算法 java_Meanshift,聚类算法

记得刚读研究生的时候&#xff0c;学习的第一个算法就是meanshift算法&#xff0c;所以一直记忆犹新&#xff0c;今天和大家分享一下Meanshift算法&#xff0c;如有错误&#xff0c;请在线交流。Mean Shift算法,一般是指一个迭代的步骤,即先算出当前点的偏移均值,移动该点到其偏…