Las comprensiones de listas pueden ser útiles en ciertas situaciones, pero también pueden ser bastante horribles de leer ... Como ejemplo ligeramente exagerado, ¿cómo sangraría lo siguiente?¿Cómo se sangran las listas de comprensión de Python?
allUuids = [x.id for x in self.db.query(schema.allPostsUuid).execute(timeout = 20) if x.type == "post" and x.deleted is not False]
estos NO son equivalentes, la comprensión de la lista es mucho más rápida, ya que no tiene que hacer ninguna búsqueda de función. la traducción apropiada usaría para bucles. – Claudiu
¡Excepto por el golpe de rendimiento, este es un ejemplo muy legible! – Geo
¿Cómo evitarían los bucles for la función de búsqueda? También tenga en cuenta que el ciclo en la lista de comprensiones se implementa en C, y por lo tanto es más rápido que el simple. – orestis