5
结果应该不一样吗? 我不明白。python中的布尔表操作
[True,False] and [True, True]
Out[1]: [True, True]
[True, True] and [True,False]
Out[2]: [True, False]
结果应该不一样吗? 我不明白。python中的布尔表操作
[True,False] and [True, True]
Out[1]: [True, True]
[True, True] and [True,False]
Out[2]: [True, False]
不,因为这不是and
操作在python中的工作方式。首先它不分开and
列表项。其次,and
运算符在两个对象之间工作,如果其中一个为False(evaluated as False ),则返回该对象,如果两者都为True,则返回第二个对象。这里有一个例子:
>>> [] and [False]
[]
>>>
>>> [False] and []
[]
>>> [False] and [True]
[True]
x and y
:如果x
是假的,那么x
,否则y
如果要应用在所有可以使用numpy的数组列表对逻辑运算:
>>> import numpy as np
>>> a = np.array([True, False])
>>> b = np.array([True, True])
>>>
>>> np.logical_and(a,b)
array([ True, False], dtype=bool)
>>> np.logical_and(b,a)
array([ True, False], dtype=bool)
1.此处由于您处理列表,空列表将被评估为False
[a和b代表a,b在zip(x,y)],谢谢,那也行得通 – Tang
您要做什么? – SubliemeSiem
什么?这些清单不应该是价值明智的吗? – ForceBru
[a和b代表a,b在zip(x,y)],这就是我正在尝试做的事情。 – Tang