Python逻辑运算符and?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python逻辑运算符and?相关的知识,希望对你有一定的参考价值。
小弟初来Python,求一个小小的问答,我明白and是有假取假or是有真取真,像这类数字与数字对比怎么分真假真取,print(8 or 3 and 4 or 2 and 0 or 9 and 7).
and和or表达式的值是第一个能决定整个表达式是否成立的那个操作数的值。举例:3 and 4:第一个操作数3为真,但不能保证and成立,还要看第二个操作数4;4也为真,此时可以确定and一定成立,因此这个表达式的值是4。
'hello' and [] and 'world':第一个操作数'hello'为真,但不能保证and成立;第二个操作数[]为假,此时可以确定and一定不成立,因此这个表达式的值是[]。
'a' or 'b' or 'c' or 'd':第一个操作数a为真,此时可以确定or一定成立,因此这个表达式的值是'a'。
1 and 2 or 3 and 4:and的优先级高于or,因此先求左边的1 and 2,这个子表达式的值是2,2为真,可以确定or一定成立,因此整个表达式的值是2。 参考技术A 在python中,逻辑运算符的优先级是逻辑运算符: or< and <not,此外,and取后而or取前,所以根据运算顺序可以得知print(8 or 3 and 4 or 2 and 0 or 9 and 7).即为print( 8 or 4 or 0 or 7),得到结果为8.
对于数字反复运用逻辑运算符一般是没有意义的。望采纳 参考技术B 数字与数字间or或and,or取前者,and取后者。
and和or相比and优先。所以这里的顺序是
3 and 4 = 4
2 and 0 = 0
9 and 7 = 7
8 or 4 = 8
8 or 0 = 8
8 or 7 = 8
最后结果为8。
希望对你有所帮助,谢谢!
python 逻辑运算
and or not
优先级,()> not > and > or
print(3>4 or 4<3 and 1==1) # F print(1 < 2 and 3 < 4 or 1>2) # T print(2 > 1 and 3 < 4 or 4 > 5 and 2 < 1) # T print(1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8) # F print(1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6) # F print(not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6) # F
ps int ---->bool 非0的数字转换bool值为True,0转换为bool值为False
print(bool(2)) print(bool(-2)) print(bool(0)) #bool --->int print(int(True)) # 1 print(int(False)) # 0
x or y x为True 则返回x
print(1 or 2) # 1 print(3 or 2) # 3 print(0 or 2) # 2 print(0 or 100) # 100
x and y x True,则返回y
print(2 or 1 < 3)#2 print(3 > 1 or 2 and 4)#4
以上是关于Python逻辑运算符and?的主要内容,如果未能解决你的问题,请参考以下文章
python中and、or和not 三个逻辑运算符,一直理解不了,求帮助!