uso-de-range-en-python

Uso de range en Python

La función range() en Python genera una secuencia inmutable de números enteros en un rango específico.

Sintaxis

La sintaxis general de range() es:

range(inicio, fin, paso)
  • inicio: Valor inicial de la secuencia (inclusive). Si no se especifica, por defecto es 0.
  • fin: Valor final de la secuencia (exclusivo). Este valor nunca es parte de la secuencia generada.
  • paso: Incremento entre cada número de la secuencia. Si no se especifica, por defecto es 1.

La función range() devuelve un objeto de tipo range, que es eficiente en términos de memoria y adecuado para generar secuencias de números grandes.

range() es útil en contextos donde se necesita generar secuencias numéricas “fijas” y que no varían (por ejemplo en bucles for, operaciones matemáticas y manipulaciones de datos).

Ejemplos básicos

Uso básico

En este ejemplo, utilizamos range para generar una secuencia de números del 0 al 4, donde el valor final especificado no se incluye en la secuencia.

# Generar una secuencia de 0 a 4 (exclusivo)
for i in range(5):
    print(i)
# Salida: 0, 1, 2, 3, 4

Especificando Inicio y Fin

Aquí, range se usa para generar una secuencia que comienza en 2 y termina en 8 (exclusivo), mostrando cómo se puede definir tanto el inicio como el fin de la secuencia.

# Generar una secuencia de 2 a 8 (exclusivo)
for i in range(2, 9):
    print(i)
# Salida: 2, 3, 4, 5, 6, 7, 8

Especificando Paso

En este ejemplo, se muestra cómo generar una secuencia que comienza en 1 y termina en 10, con un incremento de 2 en cada paso.

# Generar una secuencia de 1 a 10 con paso de 2
for i in range(1, 11, 2):
    print(i)
# Salida: 1, 3, 5, 7, 9

Iterar en Orden Inverso

Este ejemplo demuestra cómo usar range para iterar en orden inverso, comenzando desde 10 y terminando en 1.

# Iterar en orden inverso
for i in range(10, 0, -1):
    print(i)
# Salida: 10, 9, 8, 7, 6, 5, 4, 3, 2, 1

Ejemplos prácticos

Crear Lista desde range()

En este ejemplo, se muestra cómo utilizar range para crear una lista de números pares del 0 al 9, utilizando la función list para convertir la secuencia generada por range en una lista.

# Crear una lista de números pares del 0 al 9
numeros_pares = list(range(0, 10, 2))
print(numeros_pares)
# Salida: [0, 2, 4, 6, 8]

Generar Índices en un Bucle

En este ejemplo se utiliza range para generar índices en un bucle, lo cual es útil cuando se necesita acceder a los elementos de una secuencia junto con sus índices.

# Usar range() para generar índices en un bucle
palabra = "Python"

for i in range(len(palabra)):
    print(f"Índice {i}: {palabra[i]}")
# Salida: Índice 0: P, Índice 1: y, Índice 2: t, Índice 3: h, Índice 4: o, Índice 5: n

Combinar con zip() para Iterar en Paralelo

Este ejemplo muestra cómo combinar range con la función zip para iterar en paralelo sobre dos listas, permitiendo acceder a los elementos correspondientes de ambas listas en cada iteración.

# Usar range() junto con zip() para iterar en paralelo sobre dos listas
nombres = ["Ana", "Juan", "María"]
edades = [30, 25, 35]

for i in range(len(nombres)):
    print(f"{nombres[i]} tiene {edades[i]} años.")
# Salida:
# Ana tiene 30 años.
# Juan tiene 25 años.
# María tiene 35 años.