not and or
not and or (逻辑表达式)
首先要做一些准备知识:
1,优先级:逻辑型 < 测试型 < 关系型 < 算数型
2,逻辑型优先级:or < and < not
3,在python中,0,‘’,[],{},(),set(),None 为假(False),其余任何东西都为真(True).
接下来就介绍他们的运算:
x and y : 如果x为真, 则y决定了结果, 返回y.
如果x为假, 则x决定了结果, 返回x.
x or y : 如果x为假, 则y决定了结果, 返回y.
如果x为真, 则x决定了结果, 返回x.
not : 返回表达式结果相反的值.
接下来举一些例子来解释:
1, 3 and 0 -> 0 (因为x为真y决定了结果,所以结果为3)
2, 3 or 0 -> 3 (因为x为真x决定了结果,所以结果为3)
3, [] and 3 -> [] (因为[]为假x决定了结果,所以结果为[])
4, None or 3 -> 3 (因为None为假y决定结果,所以结果为3)
5, 1 or 2 and 3 ->1 (因为and的优先级比or大,所以先算2 and 3 结果我3,再算1 or 3结果为1)
6, 1<2 and 3>4 or not 1==1 or {} ->{}
(根据优先级先算not 1==1 得到1<2 and 3>4 or False or {}
再算and得到 True and False or False or {}---->False or False or {}
再算or 得到False or {}---->{})
口诀:
and 前真得后,前假得前
or 前真得前,前假得后
随机推荐
- git获取远程分支
运行 git checkout -b local-branchname origin/remote_branchname 就可以将远程分支映射到本地命名为local-branchname 的一分支 ...
- Callable线程
写一个Callable线程 import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; im ...
- DATASNAP清除僵死连接
DATASNAP使用TCP/IP长连接的时候,由于诸如客户端非正常关闭的情况会造成中间件产生僵死SOCKET连接,随着时间的推移,僵死连接越来越多,造成中间件停止服务,表现为客户端无法连接中间件.DE ...
- 【转载】同步和互斥的POSIX支持(互斥锁,条件变量,自旋锁)
上篇文章也蛮好,线程同步之条件变量与互斥锁的结合: http://www.cnblogs.com/charlesblc/p/6143397.html 现在有这篇文章: http://blog.cs ...
- ACdream原创群赛(13)のwuyiqi退役专场 C True love
True love Time Limit: 4000/2000 MS (Java/Others) Memory Limit:128000/64000 KB (Java/Others) Prob ...
- phpqrcode生成带logo的二维码图片及带文字的二维码图片
<?php require_once "./phpqrcode/phpqrcode.php"; /** * 这样就可以生成二维码了,实际上在png这个方法里还有几个参数需要使 ...
- ASP.NET MVC中为DropDownListFor设置选中项的方法
在MVC中,当涉及到强类型编辑页,如果有select元素,需要根据当前Model的某个属性值,让Select的某项选中.本篇只整理思路,不涉及完整代码. □ 思路 往前台视图传的类型是List< ...
- Spring3+ibatis (SQL Server)+pager-taglib.tld查询分页的实现
pager-taglib分页開始~ 查了好多关于分页的技术,终于选定下面方法实现~ 1.首先下载jar包:pager-taglib.jar,pager-taglib.jar放在WEB-INF/lib文 ...
- 错误 1 无法将程序集“NBear.Data.dll”复制到文件“D:\newbpm\bpm\SureBpm\Bin\NBear.Data.dll”。无法将“D:\newbpm\bpm\SureSoft.WebServiceBaseLib\bin\Debug\NBear.Data.dll”添加到网站。 无法添加文件“Bin\NBear.Data.dll”。 拒绝访问。 D:\..
错误 1 无法将程序集“NBear.Data.dll”复制到文件“D:\newbpm\bpm\SureBpm\Bin\NBear.Data.dll”.无法将“D:\newbpm\bpm\SureSof ...
- 我要开启vue2新征程。
最近我们Team接到一个新项目,给财务部开发一个内部用的结算系统. 我想了想,心里这个兴奋啊(内部系统诶,可以大胆一点的用vue2了...) 又多了一个能练手的项目,之前的卡爷就是太坑爹了...明明v ...