¿Hay alguna manera de enderezar esto para el ciclo?En línea para la evaluación de la expresión
already_inserted = True
for i in indexes:
already_inserted = already_inserted and bitfield[i]
¿Hay alguna manera de enderezar esto para el ciclo?En línea para la evaluación de la expresión
already_inserted = True
for i in indexes:
already_inserted = already_inserted and bitfield[i]
already_inserted = all(bitfield[i] for i in indexes)
¿Qué tal:
already_inserted = all(bitfield[i] for i in indexes)
1: Dos mentes trabajando a la misma velocidad :) –
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. –
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)
(+1) misma velocidad en efecto :) – NPE