Tengo una lista en Python, y quiero verificar si algún elemento es negativo. Specman tiene el método has()
de listas que sabe hacer:Manera pitónica de verificar si una condición se cumple para cualquier elemento de una lista
x: list of uint;
if (x.has(it < 0)) {
// do something
};
Dónde it
es una palabra clave Specman asignada a cada elemento de la lista a su vez.
Encuentro esto bastante elegante. Miré a través del Python documentation y no pude encontrar nada similar. Lo mejor que se me ocurrió fue:
if (True in [t < 0 for t in x]):
# do something
Me parece bastante poco elegante. ¿Hay una mejor manera de hacer esto en Python?
2.5+ solamente. De lo contrario, tiene que hacer una función, tal vez usando ifilter y excepciones, o bool (set ((x para x si es cond))) o similar. –
En lugar de una cosa complicada de ifilter, simplemente haz: def any (it): for el in it: if el: return True; falso retorno – Rory