2012-02-07 14 views

Respuesta

11
already_inserted = all(bitfield[i] for i in indexes) 
+0

(+1) misma velocidad en efecto :) – NPE

10

¿Qué tal:

already_inserted = all(bitfield[i] for i in indexes) 
+0

1: Dos mentes trabajando a la misma velocidad :) –

+6

Hay dos ventajas del 'all' función de: 1) va a * cortocircuitar * el cálculo y dejar de iterar cuando se encuentre el primer valor 'False' y 2) esté incorporado para que la iteración se ejecute completamente en el código C en la máquina virtual de Python. –

1

todos() función acepta iterable y pasará automáticamente a través de todos los elementos y aplicar bool a cada uno de ellos. Por lo tanto, es suficiente para escribir:

already_inserted = all(bitfield) 
Cuestiones relacionadas