python中的优先级(not、and、or),终终终于明了 您所在的位置:网站首页 返回值为false python中的优先级(not、and、or),终终终于明了

python中的优先级(not、and、or),终终终于明了

2023-09-07 02:42| 来源: 网络整理| 查看: 265

今晚做题的时候,看到一道关于优先级的题目,我顿时蒙了???

为什么 0 and 1 返回的是0?为什么 3 and 4却返回的是4?

天呐?这到底是为什么???不知道初学的小白是否也有着跟我一样的困惑?

经过不停的翻阅资料,看大牛们的博客,我顿时明白了

首先要知道优先级顺序:not>and>or

其次要知道在Python中所有的空字符串都是假,非空字符串都是真,非零的数字都是真。要重点记住!

接着要知道下面这几个知识点!敲黑板划重点啦

对于and:

只要左边的表达式为真,那么整个表达式返回的是右边表达式的值,否则返回的是左边表达式的值换言之,x and y 的值只能是x 和 y,x为真时就是y,x为假就是x

对于or:

只要两边的表达式都为真,整个表达式的结果返回的是左边表达式的值;如果一真一假,返回真值表达式的值;如果两个值都假,比如空值和0,返回的是右边的值(空值或0)换言之,x or y 的值只可能是 x 和 y,x为真就是x,x为假就是y

对于not x:

x为假,输出Truex为真,输出False

emmm...看起来,x and y 与 x or y 的返回结果是相反的

下面举栗子来详细说明:

(False or 5)输出5                #False为假,在or中,x为假—>输出y

(5 or False)输出5                #5为真,在or中,x为真—>输出x

(0 or False)输出False         # 0是假 

(True or 3)输出True            #True为真

(2 or True)输出2                 #2为真

(0 or True)输出True            #0为假

(True or False)输出True     #True为真

(True and  4)输出4             #True为真,在and中,x为真—>输出y

(1 and True)输出True         #1为真

(False and 1)输出False      #False为假,在and中,x为假—>输出x

(1 and False)输出False      

(0 and  True)输出0

(not 3)输出False                #3为真,在not中,x为真—>输出False

(not 0)输出True             

注意:布尔类型bool是特殊的整型,True相当于1,False相当于0

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有