Python之not and or

not and or (逻辑表达式)

首先要做一些准备知识:

1,优先级:逻辑型

2,逻辑型优先级:or

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, 14 or not 1==1 or {} ->{}

(根据优先级先算not 1==1 得到14 or False or {}

再算and得到 True and False or False or {}---->False or False or {}

再算or 得到False or {}---->{})

口诀:

and 前真得后,前假得前

or 前真得前,前假得后

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180731A09YEO00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券