一、概述

python中的逻辑操作符and 和or,也叫惰性求值,由于是惰性,只要确定了值就不往后解析代码了。


二、用法说明

(一)and 用法

文字说明:

第一种情况(判断语句):

从右往左解析,只要第一个是False,就是False,后面的就不需要运算了,整个都是错误的,无论后面是正确还是错误。记住一句话所有的判断语句除非都为True,整个句子为True,但凡有一个为False,整个都是False。

举例说明:

print (1 > 2 and 0 < 1)#False
print (1 > 2 and 0 > 1) #False
print (1 < 2 and 0 < 1)#True
print (1 > 2 and 0 < 1)#False
print (1 > 2 and 0 < 1 and 2 > 0 and 5 > 1) #False

第二种情况(都为数字时):

从右往左解析,0为False,1为True。同理,记住一句话语句中没有0整个句子就为True,但凡有一个为0,整个都是句子就为0。

举例说明:

print (0 and 5) #0
print (1 and 5) #5
print (5 and 0) #0
print (10 and 0 and 5 and 0)#0
print (6 and 4 and 3)#3
print (1 and 4 and 2 and 6) #6

(二)or 用法

文字说明:

第一种情况(判断语句):

从左往右解析,依次看语句是否为True,如果为True,整条语句都为True;不是的话,看下一条语句,同理,若都不是整条语句为False。

举例说明:

print (1 > 2 or 0 < 1) #True
print (1 < 2 or 0 > 1) #True
print (1 > 2 or 0 > 1) #False
print (1 < 2 or 0 > 1 or 2 > 3)#True

第二种情况(都为数字时):

从左往右依次解析,找到0了,看下一个数。不是0的话,整条语句就是不是0的那个值。

举例说明:

print (0 or 10) #10
print (1 or 2)  #1
print (1 or 0)  #1
print (7 or 5 or 5)#7
print (9 or 5 or 6 or 0 or 8)#9

三、两个集合and 和or操作的时候的问题

举例说明:


四、优先级问题(and > or)

举例说明:

print (1 and 5 or 0) #先计算1 and 5 为5再计算5 or 0 为5
print (1 or 5 and 0 or 6 and 0)
'''
先计算5 and 0为0,6 and 0为0
整个语句就变为1 or 0 or 0结果为1
'''

python——and和or逻辑运算符用法详解相关推荐

  1. python控制画笔尺寸,Python画笔的属性及用法详解

    画笔有颜色.画线的宽度等属性. 1.turtle.pensize():设置画笔的宽度: 2.turtle.pencolor():没有参数传入返回当前画笔颜色:传入参数设置画笔颜色,可以是字符串如&qu ...

  2. Python for i in range ()用法详解

    for i in range ()作用: range()是一个函数, for i in range () 就是给i赋值: 比如 for i in range (1,3): 就是把1,2依次赋值给i r ...

  3. Python中数组切片的用法详解

    Python中数组切片的用法详解 一.python中"::-1"代表什么? 二.python中":"的用法 三.python中数组切片 三.numpy中的整数数 ...

  4. python读取json格式文件大量数据,以及python字典和列表嵌套用法详解

    1.Python读取JSON报错:JSONDecodeError:Extra data:line 2 column 1 错误原因: JSON数据中数据存在多行,在读取数据时,不能够单单用open(), ...

  5. python字符串find函数-python字符串查找函数的用法详解

    python字符串查找函数的使用 打开Python开发工具IDLE,新建"findstr.py'文件,并写代码如下: s ='/ab/bx,.s' print (s.find('/x')) ...

  6. python filter()和reduce()函数用法详解

    一.filter() 在Python内建函数中,有一个和map()函数用法类似.却可以用来过滤元素的迭代函数,这个函数就是filter().它的函数原型是:filter(function,iteara ...

  7. python中split()函数的用法详解

    一.split()函数的简单应用 1.split()函数 split() 通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串.它是按指定的分隔符,把一个字符串分 ...

  8. python中调试pdb库用法详解

    pdb是ptyhon内置的一个调试库,为 python 程序提供了一种交互的源代码调试功能,主要特性包括设置断点.单步调试.进入函数调试.查看当前代码.查看栈片段.动态改变变量的值等. 实际工作过程中 ...

  9. python linecache模块读取文件用法详解

    linecache模块允许从任何文件里得到任何的行,并且使用缓存进行优化,常见的情况是从单个文件读取多行. linecache.getlines(filename) 从名为filename的文件中得到 ...

  10. c语言逻辑与的作用,C++ 、||、!逻辑运算符用法详解

    逻辑运算符可以将两个或多个关系表达式连接成一个或使表达式的逻辑反转.本节将介绍如何使用逻辑运算符将两个或多个关系表达式组合成一个.表 1 列出了 C++ 的逻辑运算符. 表 1 逻辑运算符 运算符 含 ...

最新文章

  1. 5-flutter 布局和列表
  2. Cmake软件编译opencv报错,CMake Warning at cmake/OpenCVDownload.cmake:193 (message): FFMPEG: Download...
  3. python3.6 asyncio paramiko_Python开发【第六篇】:模块
  4. python中数据分析的流程为-用Python进行数据分析-1
  5. http中的请求头各部分都是什么意思_30张图讲解HTTP,不信你还不会
  6. sqoop 增量导入mysql_sqoop增量导入数据库
  7. linux 文件 字符集设置,Linux字符集和系统语言设置-LANG,locale,LC_ALL,POSIX等命令及参数详解...
  8. 王一博、张艺兴等多位明星起诉医美平台更美App
  9. 计算机相关专业试题,计算机基础类 模拟试题 计算机相关专业 模拟题 10套 附答案.doc...
  10. 蓝桥杯 基础练习 矩阵乘法
  11. geoserver三维_集团公司自主研发三维GIS平台产品——GeniusWorld 2.0 C版本发布
  12. 农业知识图谱(KG):农业领域的信息检索,命名实体识别,关系抽取,分类树构建,数据挖掘...
  13. 深入理解JavaScript系列(21):S.O.L.I.D五大原则之接口隔离原则ISP
  14. python全文检索框架_全文检索框架haystack和搜索引擎whoosh的使用
  15. 在注册表里删除没用的服务
  16. python 物理引擎_第十六章:物理引擎
  17. 什么是模拟信号?数字信号?区别是什么?它们又是如何完成转换的?
  18. TCPC 可用于笔记本,平板等HOST端的解决方案
  19. java中如何添加画板背景图,在AI中怎么把已知图片在新建画板时候作为画板的背景来建立画板啊!...
  20. linux怎么静态改为自动获取,Linux系统下设置静态IP或自动获取动态IP的简单方法...

热门文章

  1. 两阶段目标检测详解--FastRCNN
  2. 聊聊如何申请技术专利
  3. TCC(新加坡太一国际数字交易所):升值万倍的数字资产 成就多少亿万豪
  4. 从远程服务器下载文件
  5. '命名空间xxx中不存在类型或命名空间名xx(是否缺少程序集引用)'-异常报错的原因
  6. html5人脸拼图,力荐10大拼图App 玩转拼图分享美好生活
  7. 如何使用FSMC让OLED屏幕刷新率飞起来?
  8. Win10禁用缩略图解决资源管理器老是重启
  9. 汽车暖风系统操作步骤
  10. Win11如何设置默认浏览器 win11设置默认浏览器的步骤方法