Например, если Вы имеете n списки bools той же длины, затем поэлементная булевская переменная И должны возвратить другой список той длины, которая имеет Верный в тех положениях, где все входные списки еще имеют Правда, и Ложь везде.
Довольно легко записать, я просто предпочел бы использовать встроенное, если Вы существуете (ради стандартизации/удобочитаемости).
Вот реализация поэлементных И:
def eAnd(*args):
return [all(tuple) for tuple in zip(*args)]
использование в качестве примера:
>>> eAnd([True, False, True, False, True], [True, True, False, False, True], [True, True, False, False, True])
[True, False, False, False, True]
Нет встроенного способа сделать это. Вообще говоря, понимание списков и тому подобное - это то, как вы выполняете поэлементные операции в Python.
Numpy предоставляет это (используя и
для технических ограничений) в своем типе массива. Массивы Numpy обычно выполняют операции поэлементно.
Нет, таких встроенных модулей нет. Ваш метод с использованием zip
и all
/ any
- это то, что я бы использовал.
Нет, я не верю, что в стандартной библиотеке есть такая функция ... особенно когда ее так легко написать в терминах предоставляемых функций.