python中逻辑与或(and、or)和按位与或异或(&、|、^)区别


Posted in Python onAugust 05, 2020

按位与或(&、|、^):按照二进制进行逻辑运算
例如:数字换成二进制,各自位上的0/1进行逻辑运算,得到的结果转换为数字

3 & 2
=0111 & 0010
=0010
=2

二进制逻辑运算规则:

&:0&0=0; 0&1=0; 1&0=0; 1&1=1。
|:0|0=0; 0|1=1; 1|0=1; 1|1=1。
^:0^0=0; 0^1=1; 1^0=1; 1^1=0。

代码运行顺序:从上到下,从左到右

一:逻辑与或 (and、or)

1:and :从左到右运行,运行到表达式不正确就输出False,后面的表达式逻辑短路;若运行到函数且无返回值,则输出None,且后面的表达式逻辑短路(不运行了);
若表达式全正确,则输出最后一个正确的结果。

例1:运行到表达式不正确就输出False,后面的表达式逻辑短路

def print_1():
 print('已经运行这里了')
a = 99 and 3==1 and print_1()
print(a)

输出:

python中逻辑与或(and、or)和按位与或异或(&、|、^)区别

例2:若运行到函数且无返回值,则输出None,且后面的表达式逻辑短路

def print_1():
 print('已经运行这里了')
a = 99 and 3==3 and print_1() and False
print(a)

输出:

python中逻辑与或(and、or)和按位与或异或(&、|、^)区别

例3:若表达式全正确,则输出最后一个正确的结果

def print_1():
 print('已经运行这里了')
 return 1==1
a = 99 and 3==3 and print_1() and 99
print(a)

输出:

python中逻辑与或(and、or)和按位与或异或(&、|、^)区别

2:or:从左到右运行,运行到表达式正确的就输出这个表达式的结果,后面的表达式逻辑短路;若运行到函数且无返回值,则继续运行后面的表达式;
若表达式全不正确,则输出False;

例1:运行到表达式正确的就输出这个表达式的结果,后面的表达式逻辑短路

def print_1():
 print('已经运行这里了')
b = 99==1 or 3==3 or print_1()
print(b)

输出:

python中逻辑与或(and、or)和按位与或异或(&、|、^)区别

例2:若运行到函数且无返回值,则继续运行后面的表达式

def print_1():
 print('已经运行这里了')
b = 99==1 or 3==1 or print_1() or 99
print(b)

输出:

python中逻辑与或(and、or)和按位与或异或(&、|、^)区别

例3:若表达式全不正确,则输出False

def print_1():
 print('已经运行这里了')
b = 99==1 or 3==1 or print_1() or False
print(b)

输出:

python中逻辑与或(and、or)和按位与或异或(&、|、^)区别

到此这篇关于python中逻辑与或(and、or)和按位与或异或(&、|、^)区别的文章就介绍到这了,更多相关python中逻辑与或(and、or)和按位与或异或(&、|、^)内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python执行外部程序的常用方法小结
Mar 21 Python
python使用线程封装的一个简单定时器类实例
May 16 Python
python DataFrame获取行数、列数、索引及第几行第几列的值方法
Apr 08 Python
Ubuntu下升级 python3.7.1流程备忘(推荐)
Dec 10 Python
python 在某.py文件中调用其他.py内的函数的方法
Jun 25 Python
python实现矩阵和array数组之间的转换
Nov 29 Python
Python如何使用argparse模块处理命令行参数
Dec 11 Python
python cv2截取不规则区域图片实例
Dec 21 Python
python分布式计算dispy的使用详解
Dec 22 Python
Python3 实现爬取网站下所有URL方式
Jan 16 Python
opencv python Canny边缘提取实现过程解析
Feb 03 Python
2020新版本pycharm+anaconda+opencv+pyqt环境配置学习笔记,亲测可用
Mar 24 Python
Node.js 和 Python之间该选择哪个?
Aug 05 #Python
基于python图书馆管理系统设计实例详解
Aug 05 #Python
基于Python的一个自动录入表格的小程序
Aug 05 #Python
Python中logging日志记录到文件及自动分割的操作代码
Aug 05 #Python
Python如何读写字节数据
Aug 05 #Python
python中Django文件上传方法详解
Aug 05 #Python
Python限制内存和CPU使用量的方法(Unix系统适用)
Aug 04 #Python
You might like
超外差式晶体管收音机的组装与统调
2021/03/01 无线电
详解PHP用substr函数截取字符串中的某部分
2016/12/03 PHP
Yii CFileCache 获取不到值的原因分析
2017/02/08 PHP
php批量转换文件夹下所有文件编码的函数类
2017/08/06 PHP
php+mysql开发的最简单在线题库(在线做题系统)完整案例
2019/03/30 PHP
一行代码告别document.getElementById
2012/06/01 Javascript
javascript操作字符串的原生方法
2014/12/22 Javascript
DOM基础教程之使用DOM + Css
2015/01/20 Javascript
JS简单实现点击复制链接的方法
2016/08/03 Javascript
javascript的几种写法总结
2016/09/30 Javascript
javascript  删除select中的所有option的实例
2017/09/17 Javascript
vue删除html内容的标签样式实例
2018/09/13 Javascript
小程序日历控件使用方法详解
2018/12/29 Javascript
NestJs 静态目录配置详解
2019/03/12 Javascript
Vue CLI 3.x 自动部署项目至服务器的方法
2019/04/02 Javascript
JS获取表格视图所选行号的ids过程解析
2020/02/21 Javascript
Js on及addEventListener原理用法区别解析
2020/07/11 Javascript
vue-cli3 引入 font-awesome的操作
2020/08/11 Javascript
[54:26]完美世界DOTA2联赛PWL S3 Forest vs Rebirth 第一场 12.10
2020/12/12 DOTA
Python中json格式数据的编码与解码方法详解
2016/07/01 Python
python实现自动登录后台管理系统
2018/10/18 Python
Python字符串处理的8招秘籍(小结)
2019/08/13 Python
通过实例了解Python异常处理机制底层实现
2020/07/23 Python
CSS Grid布局教程之浏览器开启CSS Grid Layout汇总
2014/12/30 HTML / CSS
Html5 Canvas 实现一个“刮刮乐”游戏
2019/09/05 HTML / CSS
日本著名化妆品零售网站:Cosme Land
2019/03/01 全球购物
十岁生日家长答谢词
2014/01/17 职场文书
校园安全检查制度
2014/02/03 职场文书
太太口服液广告词
2014/03/20 职场文书
骨干教师培训方案
2014/05/06 职场文书
班级课外活动总结
2014/07/09 职场文书
开展党的群众路线教育实践活动总结报告
2014/10/31 职场文书
2015年学校体育工作总结
2015/04/22 职场文书
企业安全隐患排查治理制度
2015/08/05 职场文书
病假条格式范文
2015/08/17 职场文书
关于职业道德的心得体会
2016/01/18 职场文书