我假设您想将逻辑 AND 应用于行。您可以使用 numpy.all
。
>>> import numpy as np
>>> a = np.array([[True, True, False], [False, False, False], [True, True, True]])
>>> a
array([[ True, True, False],
[False, False, False],
[ True, True, True]])
>>>
>>> np.all(a, axis=1)
array([False, False, True])
如果不使用numpy
,可以使用operator.and_
和functools.reduce
来解决问题。
>>> from operator import and_
>>> from functools import reduce
>>>
>>> lst = [[True, True, False], [False, False, False], [True, True, True]]
>>> [reduce(and_, sub) for sub in lst]
[False, False, True]
编辑:实际上,在这种特殊情况下,reduce
有点多余。
>>> [all(sub) for sub in lst]
[False, False, True]
同样能胜任工作。