前言
(小白专用)本次所分享的是Python中的not、and、or的执行时的优先级,以及他们的具体用法。本文比较详细,不喜勿喷。
一、not、and、or的含义以及优先级
对象
返回结果
优先顺序
not x
if x is false,then True,else False
1
x and y
if x is false,then x,else y
2
x or y
if x is false,then y,else x
3
含义:not是 “非” ;and是 “与” ;or是 “或” (可以用数学去理解)
1、not True = False 或者 not False = True (非真就是假,非假即真)
2、and是一假则假,两真为真,两假则假
3、or是一真即真,两假即假,两真则真
优先级是 not > and > or
代码如下(示例):
x=1 #将x赋值为1 y=0 #将y赋值为0 z=0 #将z赋值为0 print(x or y and not z) ''' 输出结果为 1 '''
小提示: 我们知道在编程语言中“非0即是True”,也就是“0为False,1为True”
- 由于优先级是not>and>or,所以首先执行not z(也就是not 0),
即 not 0 = not False =True =1
下一步是轮到了and,那么 y and 1(已知y=0)即 0 and 1,也就是
False and True (假与真),我们刚刚谈过and,一假即假,故
y and 1 = 0 and 1 = False = 0
最后一步按优先级是轮到了or,即 x or 0(已知x=1),
即 1 or 0 =True or Flase =True = 1(or即“或”中,一真即真)
所以输出结果为 1
- 总结: 代码运算过程为: (用数学符号表示优先级)
{ x or [ y and (not z) ] }
二、not、and、or的使用方法
1.not
if x is false,then True,else False
如果x为False则not x 为True,否则为False
(如果x是假的,则“非假”为真,否则x是真的,则非真为假)
在编程中是 布尔运算,即返回值是True 或者 False
代码如下(示例):
print(not 0,not 1,not True,not False) ''' 输出结果为: True False False True '''
2.and
and运算后的返回结果:
从左到右计算表达式,若所有的都为真,则返回最后一个值,若存在假,返回第一个值。
简单理解:
and的目的是找到并返回第一个False(假)或最后一个True(真) (从左往右找)(一假即假,两真即真)
代码如下(示例):
1、找到并返回第一个False(假)
print(1 and 2 and 0 and 4 and False) ''' 输出结果为: 0 '''
因为and是找到第一个False(假),我们知道在计算机中,
False即为0,所以输出结果是 0
2、找到并返回最后一个True(真)
print(1 and 2 and True and 4 and 6) print(2 and 5 and True and 7 and True) ''' 输出结果为: 6 True '''
因为 1,2,True,4,6 都不是0,我们知道 非零True,所以都是 真的,那么输出最后一个真值,所以输出结果为 6
因为 2,5,True,7,True 都不是0,都是真的,同理输出最后一个真值,所以输出结果为 True
3.or
or运算后的返回结果:
从左到右计算表达式,只要遇到真值就返回那个真值,如果表达式结束依旧没有遇到真值,就返回最后一个假值。
简单理解:
or的目的是找到并返回第一个True(真)或最后一个False(假) (从左往右找)(一真即真,两假即假)
代码如下(示例):
1、找到并返回第一个True(真)
print(0 or 0 or '' or 8 or 1 ) ''' 输出结果为: 8 '''
小提示:
- 在python中, [ ] 或者 ' ' 或者 ( ) 或者 None 都是空的意思,
空也为假,即 空 = 假 = False
- 由上面的代码可以看到,有两个真值分别是 8和1,但我们要找到作用范围内的第一个真值(True),即第一个为8,所
以输出结果为 8
2、找到并返回最后一个False(假)
print([] or 0 or '' or None or () ) ''' 输出结果为: () '''
小提示:
- 在python中, [ ] 或者 ' ' 或者 ( ) 或者 None 都是空的意思,
空也为假,即 空 = 假 = False - 此处可以知道,代码中都为假(False),所以要找到最后一个假(False)并返回这个值。最后一个是()所以输出结果为 ()
总结
- 优先级是 not > and > or
- not:如果x是假的,则“非假”为真,否则x是真的,则非真为假
- and: 找到并返回第一个False(假)或最后一个True(真)
- or: 找到并返回第一个True(真)或最后一个False(假)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。
更新日志
- 纪钧瀚《钢琴阅读时光 雨中书店聆听轻音乐》[FLAC/分轨][399.62MB]
- 证声音乐图书馆《走向自然 疗心爵士乐》[320K/MP3][87.4MB]
- 证声音乐图书馆《走向自然 疗心爵士乐》[FLAC/分轨][184.94MB]
- 陈慧娴.2018-Priscilla-Ism演唱会3CD(2024环球红馆40复刻系列)【环球】【WAV+CUE】
- 郑秀文.1999-我应该得到(国)【华纳】【WAV+CUE】
- 陈家慧.2011-钢琴酒吧2CD【龙吟唱片】【WAV+CUE】
- 证声音乐图书馆《雨季 蓝调吉他 Rainy Blues》[320K/MP3][45.01MB]
- 证声音乐图书馆《雨季 蓝调吉他 Rainy Blues》[FLAC/分轨][109.13MB]
- 赞多《序章》[320K/MP3][45.54MB]
- 许巍.2004-每一刻都是崭新的【步升大风】【WAV+CUE】
- 群星.2024-四方馆影视原声带【韶愔音乐】【FLAC分轨】
- 陈雷.1997-安锁咧【金圆唱片】【WAV+CUE】
- 关淑怡.2013-MY.FAVORITE.SK.3CD【环球】【WAV+CUE】
- Sweety.2006-花言乔语【丰华】【WAV+CUE】
- 李恕权.2003-回·20年全精选2CD【SONY】【WAV+CUE】