逻辑运算符优先级以及and、or的短路原则

逻辑运算符的优先级 ()> not > and > or

and or 遵循短路原则

短路原则

  1. 表达式1 and 表达式2 and 表达式3 … 如果表达式1为假,则整个表达式的值为假,后面的表达式则没有计算的必要。
    and 中有假,返回第一个假,后面的不进行计算;全是真,返回最后一个真
    print(1 and False and 0) = False
    print(1 and 0 and False) = 0

  2. 表达式1 or 表达式2 or 表达式3 … 如果表达式1为真,则整个表达式的值为真,后面的表达式的值就没有计算的必要。
    or中有真,直接返回该真,其余不计算;全是假,返回最后一个假
    print(1 or False or None) = 1
    print([] or True or None) = True
    print(False or {} or None) = None

猜你喜欢

转载自blog.csdn.net/hu827250322/article/details/90927451
今日推荐