运算符的问题
(not 1)or(0 and 1)or(3 and 4)or(5 and 6)or(7 and 8 and 9)的结果是多少?怎么理解这一题 结果是1有括号先算括号里的,没有括号优先级顺序not>and>or
先算括号里结果是 0 or 0 or 1 or 1 or 1
or预算遇到1就结束了结果是1 洋洋痒 发表于 2021-3-14 17:12
结果是1
有括号先算括号里的,没有括号优先级顺序not>and>or
明明是4啊>>> (not 1)or(0 and 1)or(3 and 4)or(5 and 6)or(7 and 8 and 9)
4
>>> 除了楼上所说,我们还要明白短路逻辑
比如or其中不是一个结果为真就行了嘛,它就返回那个最关键的东西{:10_321:}
>>> 1 or 2 #第一个数为真,所以不需要再算,直接返回第一个数
1
>>> 0 or 1 #第一个数为假,但还没完,再看第二个,哦是真,那没事了,返回第二个数
1
>>> 0 or False
False
>>> #这你明白了吧
那and就是这样{:10_321:}
>>> 0 and 1 #第一个就是假,那还谈什么,直接返回第一个数
0
>>> 1 and 2 #这个第一个判断不出结果,返回第2个数
2
希望有所帮助{:10_256:} 柿子饼同学 发表于 2021-3-14 17:53
明明是4啊
{:10_285:}用错知识点了
页:
[1]