Saltar al contenido

¿Hay alguna diferencia entre `continue` y` pass` en un bucle for en Python?

Solución:

Sí, hacen cosas completamente diferentes. pass simplemente no hace nada, mientras continue continúa con la siguiente iteración del ciclo. En su ejemplo, la diferencia se haría evidente si agregara otra declaración después de la if: Después de ejecutar pass, esta declaración adicional sería ejecutada. Después continue, no lo haría.

>>> a = [0, 1, 2]
>>> for element in a:
...     if not element:
...         pass
...     print element
... 
0
1
2
>>> for element in a:
...     if not element:
...         continue
...     print element
... 
1
2

Sí, hay una diferencia. continue obliga al bucle a comenzar en la siguiente iteración mientras pass significa “no hay código para ejecutar aquí” y continuará por el resto o el cuerpo del bucle.

Ejecute estos y vea la diferencia:

for element in some_list:
    if not element:
        pass
    print 1 # will print after pass

for element in some_list:
   if not element:
       continue
   print 1 # will not print after continue

continue saltará de nuevo a la parte superior del bucle. pass continuará procesando.

si el paso está al final del bucle, la diferencia es insignificante ya que el flujo volvería a la parte superior del bucle de todos modos.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *