variable usar funcion ejemplo dato como booleanos booleano bool python list built-in boolean-operations elementwise-operations

usar - funcion xor python



¿Existen funciones integradas para operadores booleanos elementales sobre listas booleanas? (5)

La función numpy.all hace lo que usted desea, si especifica la dimensión en la que se contraerá:

>>> all([[True, False, True, False, True], [True, True, False, False, True], [True, True, False, False, True]], 0) array([ True, False, False, False, True], dtype=bool)

Por ejemplo, si tiene n listas de bools de la misma longitud, entonces elementwise boolean Y debería devolver otra lista de esa longitud que tenga True en aquellas posiciones donde todas las listas de entrada tengan True, y False en cualquier otra parte.

Es bastante fácil de escribir, yo preferiría usar una incorporada si existe una (por razones de estandarización / legibilidad).

Aquí hay una implementación de elementwise Y:

def eAnd(*args): return [all(tuple) for tuple in zip(*args)]

ejemplo de uso:

>>> eAnd([True, False, True, False, True], [True, True, False, False, True], [True, True, False, False, True]) [True, False, False, False, True]


No hay una forma integrada de hacer esto. En términos generales, las comprensiones de listas y similares son la forma en que se realizan las operaciones elementwise en Python.

Numpy proporciona esto (usando & , para limitaciones técnicas) en su tipo de matriz. Las matrices numpy suelen realizar operaciones elementwise.


No, no creo que exista ninguna de estas funciones en la biblioteca estándar ... especialmente cuando es tan fácil escribir en términos de las funciones que se proporcionan.


No, no hay tales incorporaciones. Tu método usando zip y all / any es lo que yo usaría.


Tratar:

[ x&y for (x,y) in zip(list_a, list_b)]