python的and和or优先级

Posted Apollo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python的and和or优先级相关的知识,希望对你有一定的参考价值。

输入一年份,判断该年份是否是闰年并输出结果。(编程题)
注:凡符合下面两个条件之一的年份是闰年。 (1) 能被4整除但不能被100整除。 (2) 能被400整除。

def get_year():
  year = int(input(“请输入年份:”))
  if year % 4 == 0 and year % 100 != 0 or year % 400 == 0:
    print(“%s 年是闰年” % year)
  else:
  print(“%s 年不是闰年” % year)
get_year()


对python而言

其一, 在不加括号时候, and优先级大于or
其二, x or y 的值只可能是x或y. x为真就是x, x为假就是y
第三, x and y 的值只可能是x或y. x为真就是y, x为假就是x

例一:
对于, 1 or 5 and 4: 先算5 and 4, 5为真, 值为4. 再算1 or 4, 1 为真,值为1
对于, (1 or 5) and 4: 先算1 or 5, 1为真, 值为1. 再算1 and 4, 1为真,值为4

例二:
a = “Apollo”
b = “good”
c = True and a or b
print(c)
d = False and a or b
print(d)

输出:
Apollo
hell



























以上是关于python的and和or优先级的主要内容,如果未能解决你的问题,请参考以下文章

python的and和or优先级

python基础语法之and,or,not

Python `or`、`and` 运算符优先级示例

[Python]计算闰年时候出现的and和or优先级的问题以及短路逻辑

[Python]计算闰年时候出现的and和or优先级的问题以及短路逻辑

python and or not 优先级