Python: bucles (for, while)

El bucle for es un poco diferente a otros lenguajes, en Python recorre los elementos de una secuencia.

La definición de for es:

for target_list in expression_list:
	suite
[else:
	suite]

Por lo general target_list es la variable que irá conteniendo los valores de la lista expression_list, aunque hay casos en los que se pueden poner más de una variable y más de una lista.

for x in range(4):
    print(x)

0
1
2
3

La parte del else es opcional y se ejecutará siempre que termine el bucle, a menos que se haya usado un break en el primer suite.

for x in range(10):
    print(x)
else:
    print("11")
    print(x)

0
1
2
3
4
5
6
7
8
9
11
9

En el primer suite podemos usar continue que no ejecuta el resto de comandos y continua con el siguiente elemento.

for x in range(10):
    if x == 5:
        continue
    print(x)
else:
    print("11")
    print(x)

0
1
2
3
4
6
7
8
9
11
9

También podemos usar break que termina el bucle por completo y en caso de haber un elsetampoco lo ejecuta.

for x in range(10):
    if x == 5:
        break
    print(x)
else:
    print("11")
    print(x)

0
1
2
3
4

El bucle while se repite mientras la expresión sea True.

La definición de while es:

while expresion:
	suite
[else:
	suite]

Por lo general target_list es la variable que irá conteniendo los valores de la lista expression_list, aunque hay casos en los que se pueden poner más de una vriable y más de una lista.

x = 0

while x >= 5:
    print(x)
    x += 1

0
1
2
3
4
5

La parte del else es opcional y se ejecutará siempre que termine el bucle, a menos que se haya usado un break en el primer suite.

x = 0

while x >= 5:
    print(x)
    x += 1
else:
    print("11")
    print(x)

0
1
2
3
4
5
11
6

En el primer suite podemos usar continue que no ejecuta el resto de comandos y continua con el siguiente elemento.

x = 0

while x >= 5:
    if x == 3:
        x += 1
        continue
    print(x)
    x += 1
else:
    print("11")
    print(x)

0
1
2
4
5
11
6

También podemos usar break que termina el bucle por completo y en caso de haber un elsetampoco lo ejecuta.

x = 0

while x >= 5:
    if x == 3:
        break
    print(x)
    x += 1
else:
    print("11")
    print(x)

0
1
2

Retro

Lugares

Redes

Sistemas

Varios