编程语言
首页 > 编程语言> > Python逻辑并返回错误结果

Python逻辑并返回错误结果

作者:互联网

y1=[True, True, False, False]

y2=[False, True, True, False]

y3=y1 and y2

print(y3)

结果:

[False, True, True, False]

这里发生了什么?运算中的第三个项目为False和True,结果为True?

解决方法:

如果X为假,则X和Y求值为X,如果X为真,则Y为Y.

任何非空列表都是真实的.

因此,如果

y1 = [True, True, False, False]

y2 = [False, True, True, False]

则y1和y2的值等于y2,即[False,True,True,False].

如果您想和列表中的各个元素一起使用,可以使用ziplist comprehension来实现:

y3 = [x1 and x2 for x1,x2 in zip(y1,y2)]

标签:boolean-logic,python
来源: https://codeday.me/bug/20191108/2010370.html