Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/10/2015, 10:52
Koan
 
Fecha de Ingreso: diciembre-2009
Ubicación: Spain
Mensajes: 180
Antigüedad: 14 años, 4 meses
Puntos: 9
Operaciones con funciones all y any

Hola de nuevo,

Estas funciones se pueden combinar de muchas maneras y ahorrar en cierto modo los or, not y and. Osea, chequean sobre una iteracion de elementos y devuelven True o False del conjunto total.

Hace poco he descubierto el operador de comparacion delante de un for

Código Python:
Ver original
  1. any(i == 2 for i in (1,2,3))
True (Hay al menos un dos en la tupla)

Código Python:
Ver original
  1. all(i == 2 for i in (1,2,3))
False (Todos los numeros de la tupla no son un dos)

Esto es una forma sencilla de expresar estas funciones. Pero por lo que veo, el for itera sobre la tupla. Y a mi me gustaria que iterara sobre la tupla y mas elementos delante del for. Y entonces nos devolviera True o False.

Ejemplo:

Código Python:
Ver original
  1. any(i == (1,3) for i in (1,2,3))
Y que nos diera True, por que el 1 y el 3 estan en la tupla el for

o

Código Python:
Ver original
  1. all(i == (3, 3) for i in (3,3,3))
Tambien True, ya que el 3 y el 3 estan en la tupla del for.

Se trataria que en ambas funciones habrian doble iteraciones. Y una vez acabadas, devolvieran True o False.