在python中not or and 这三个布尔运算符是有优先顺序的,简单说来优先顺序就是:not > and > or .
记住了这个优先顺序,这时候如果输入not 1 or 2 and 3 那么应该返回的是什么呢?
答案是:3
原因是在 python 中当 or 左右两侧都为真时输出为左侧值,而and运算符是,当两侧为真时输出为右侧运算符。且在python中0和空值返回为假,其余数字返回都为真。
最后举一个小甲鱼视频中比较复杂的例子:
not 1 or 0 and 1 or 3 and 4 or 5 and 6 or 7 and 8 and 9
按优先顺序应该是:
not 1 or ( 0 and 1) or ( 3 and 4 ) or( 5 and 6 ) or ( 7 and 8 and 9 )结果为:4
来源:CSDN
作者:i_wave
链接:https://blog.csdn.net/i_wave/article/details/104746644