python那些需要知道的事儿——逻辑运算与比大小
一、逻辑运算
逻辑运算符: and or not,结果为布尔值(True和False)
1、基本逻辑运算符介绍
- not :将后面的逻辑运算结果取反
>>> not 1 < 2
False
>>> not 1 == 2
True
- and :连接左右两个条件,当两个条件都为真时,返回结果为真(True),否则为假(False)
>>> 1 == 1 and 3 < 5
True
>>> 1 != 2 and 2 == 3
False
- or 连接左右两个条件,当有一个条件为真时,返回结果为真(True),否者为假(False)
>>> 1 == 2 or 1 < 3
True
>>> 1 > 4 or 3*4 < 20
True
2、运算优先级: () > not > and > or
当多个逻辑运算符同时出现时,按照优先级进行判断
# 优先级
1 == 3 and 23 < 43 or not 1 < 3 and 1*2 == 2 or 3-2 < 5
# 等价于
(1 == 3 and 23 < 43) or ((not 1 < 3) and 1*2 == 2) or 3-2 < 5
3、显式与隐式布尔值逻辑运算
隐式布尔值:
- False :0 , None , 空
- True :除以上外所有整数、浮点数、字符串等
>>> 1 < 3 and 1
1
>>> 1 < 3 and 0 or "aa"
'aa'
4、短路运算
一旦整个逻辑运算结果可以确定,计算机就会返回确定结果处的逻辑运算值,如果是隐式布尔值就返回隐式布尔值
and 一假为假,全真为真
or 一真为真,全假为假
>>> 1 and 0
0
>>> 0 or 2
2
>>> None or 1 and "aa" and []
[]
二、比大小
同等类型可以比大小
整数类型可以任意相比
字符串比相应位置字符的编码
其他类型需要相同位置相同类型相比
>>> 1 < 3
True
>>> 1 > 1.4
False
>>> "asdksbd" > "djasks"
False
>>> [1,2,3,4,5] < [3,2,3,1,4]
True
python那些需要知道的事儿——逻辑运算与比大小的更多相关文章
- python那些需要知道的事儿——内存泄漏
啥,内存也会泄露?漏了咋补?我的内存会不会越漏越小?咋一听到内存泄漏,本喵的脑子蹦出无数想法,所以到底啥是内存泄漏! 一.垃圾回收机制(GC)机制 在理解内存泄漏之前,需要补充一个知识,即GC机制(也 ...
- python创建有序字典及字典按照值的大小进行排序
有序字典 在Python中,字典类型里面的元素默认是无序的,但是我们也可以通过collections模块创建有序字典 # -*- coding:utf-8 -*- # python有序字典需导入模块c ...
- 用PYTHON实现将电脑里的所有文件按大小排序,便于清理
嘿嘿,慢慢找到写代码的感觉了. 这个小程序涉及的东东还是很多的,数据结构的设计,错误的处理,快速字典排序,文件数值调整.... import os,os.path import glob SUFFIX ...
- python之使用heapq()函数计算列表中数值大小
# heapq函数:计算列表最大几个值和最小几个值 # 语法:heapq.nlargest(n, list,[key]) # n表示最大或最小的几个: list为分析的对象: key为排序关键字,非必 ...
- python 学习笔记(三)根据字典中值的大小对字典中的项排序
字典的元素是成键值对出现的,直接对字典使用sorted() 排序,它是根据字典的键的ASCII编码顺序进行排序,要想让字典根据值的大小来排序,可以有两种方法来实现: 一.利用zip函数将字典数据转化为 ...
- Python PIL 怎么知道写入图片格式的kb大小
把图片数据写入一个IO,读这个IO的长度大小: #-*-coding:utf-8-*- from PIL import Image import io img = Image.open("1 ...
- Python运算符及逻辑运算
基本运算符 运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算.例如:2+3,其操作数是2和3,而运算符则是“+”.在计算器语言中运算符大致可以分为5种类型:算术运算符.连接运算符.关系运 ...
- Python基本语法
目录缩进流程控制语句表达式函数对象的方法类型数学运算 缩进Python开发者有意让违反了缩进规则的程序不能通过编译,以此来强制程序员养成良好的编程习惯.并且Python语言利用缩进表示语句块的开始和退 ...
- Python成长笔记 - 基础篇 (二)python基本语法
Python的设计目标之一是让代码具备高度的可阅读性.它设计时尽量使用其它语言经常使用的标点符号和英文单字,让代码看起来整洁美观.它不像其他的静态语言如C.Pascal那样需要重复书写声明语句,也不像 ...
随机推荐
- git hooks All In One
git hooks All In One $ xgqfrms git:(main) cd .git/ $ .git git:(main) ls COMMIT_EDITMSG HEAD branches ...
- 如何使用 js 实现一个树组件
如何使用 js 实现一个树组件 tree component const arr = [ { id: 1, value: 1, level: 1, parentId: 0, }, { id: 2, v ...
- Firewall & Network Security
Firewall & Network Security 防火墙 & 网络安全 NAT Gateway VPC Virtual Private Cloud refs https://en ...
- Flutter & release an iOS app
Flutter & release an iOS app https://flutter.dev/docs/deployment/ios .ipa https://en.wikipedia.o ...
- switchable css dark theme in js & html custom element
switchable css dark theme in js & html custom element dark theme / dark mode https://codepen.io/ ...
- html转png
/*海报弹窗2018-3-14*/.diglogimg{position: fixed;top:0;left:0;z-index: 99;width: 100%;height: 100%;backgr ...
- 黑马来袭!NGK生态所二月上线!
日前,加密货币交易所Coinbase Global Inc,向美国证券交易委员会申请首次公开募股,成为首家公开上市的加密货币交易所."Coinbase上市,给行业带来更多的是信心.让大家看到 ...
- 高倍币VAST了解一下,如何掀起算力挖矿新热潮?
随着比特币.以太坊等主流数字货币的起起落落,市场对于数字货币交易似乎进入了冷却期.很多生态建设者开启了观望态度,机构以及巨鲸们也开始纷纷着手分散投资.就在此时,一个新的概念逐步露出头角,吸引了大众关注 ...
- NGK Global-下一个千亿市场来袭
6月4日,NGK Global开启了全球巡回路演,NGK全球社区经过激烈的讨论,最终决定由美国社区发起,在纽约举办NGK Global第一场路演. 路演讲师Viko就NGK的IPFS协议以及NGK未来 ...
- 「NGK每日快讯」11.24日NGK公链第22期官方快讯!