For loop with range - Learn Python 3 - Snakify

Lesson 4
Para bucle con rango


1. Para bucle con rango

En las lecciones anteriores tratamos sobre programas y condiciones secuenciales. A menudo, el programa necesita repetir bloque varias veces. Ahí es donde los bucles son útiles. Hay for y while los operadores de bucle en Python, en esta lección cubrimos for .

for loop itera sobre cualquier secuencia. Por ejemplo, cualquier cadena en Python es una secuencia de sus caracteres, por lo que podemos iterar sobre ellos usando for :

for character in 'hello':
    print(character)

Otro caso de uso para un bucle for es iterar alguna variable entera en orden creciente o decreciente. Dicha secuencia de números enteros se puede crear usando el range(min_value, max_value) funciones range(min_value, max_value) :

for i in range(5, 8):
    print(i, i ** 2)
print('end of loop')
# 5 25
# 6 36
# 7 49
# fin del ciclo

El range(min_value, max_value) función range(min_value, max_value) genera una secuencia con números min_value , min_value + 1 , ..., max_value - 1 . El último número no está incluido.

Hay una forma reducida de range () - range(max_value) , en cuyo caso min_value se establece implícitamente en cero:

for i in range(3):
    print(i)
# 0
# 1
# 2

De esta manera, podemos repetir algunas acciones varias veces:

for i in range(2 ** 2):
    print('Hello, world!')

Igual que con if-else, la sangría es lo que especifica qué instrucciones están controladas por for y cuáles no.

El rango () puede definir una secuencia vacía, como el range(-5) o el range(7, 3) . En este caso, el for-block no se ejecutará:

for i in range(-5):
    print('Hello, world!')

Tengamos un ejemplo más complejo y sumemos los enteros de 1 a n inclusive.

result = 0
n = 5
for i in range(1, n + 1):
    result += i
    # esto ^^ es la abreviatura de
    # resultado = resultado + i
print(result)

Preste atención a que el valor máximo en el rango () es n + 1 para hacer que i igual a n en el último paso.

Para iterar sobre una secuencia decreciente, podemos usar una forma extendida de range () con tres argumentos: range(start_value, end_value, step) . Cuando se omite, el paso es implícitamente igual a 1. Sin embargo, puede ser cualquier valor distinto de cero. El ciclo siempre incluye start_value y excluye end_value durante la iteración:

for i in range(10, 0, -2):
    print(i)
# 10
# 8
# 6
# 4
# 2
Advertising by Google, may be based on your interests

2. configurando la función print ()

Por defecto, la función print() imprime todos sus argumentos separándolos por un espacio y pone un símbolo de línea nueva después de él. Este comportamiento se puede cambiar usando los argumentos de palabras clave sep (separator) y end .
print(1, 2, 3)
print(4, 5, 6)
print(1, 2, 3, sep=', ', end='. ')
print(4, 5, 6, sep=', ', end='. ')
print()
print(1, 2, 3, sep='', end=' -- ')
print(4, 5, 6, sep=' * ', end='.')
Advertising by Google, may be based on your interests