Python proporciona diversas formas de generar números aleatorios a través del módulo random. Este módulo incluye funciones para generar números enteros, flotantes y seleccionar elementos aleatorios de secuencias como listas o tuplas.
La función randint(a, b) genera un número entero aleatorio en el rango de a a b (ambos inclusivos):
import random
numero_aleatorio = random.randint(1, 10)
print(numero_aleatorio) # Genera un número entre 1 y 10
La función random() genera un número flotante aleatorio entre 0.0 y 1.0:
numero_flotante = random.random()
print(numero_flotante) # Genera un número entre 0.0 y 1.0
Si deseas un número flotante dentro de un rango específico, puedes usar uniform(a, b):
numero_flotante_rango = random.uniform(1.5, 5.5)
print(numero_flotante_rango) # Genera un número entre 1.5 y 5.5
Para seleccionar un elemento aleatorio de una secuencia (lista, tupla, etc.), se utiliza choice():
colores = ['rojo', 'verde', 'azul', 'amarillo']
color_aleatorio = random.choice(colores)
print(color_aleatorio) # Selecciona un color aleatorio
Si necesitas generar múltiples números aleatorios, puedes usar sample() para crear una lista de valores únicos o choices() para permitir repeticiones:
numeros_unicos = random.sample(range(1, 100), 5)
print(numeros_unicos) # Genera una lista de 5 números únicos entre 1 y 99
numeros_con_repeticion = random.choices(range(1, 100), k=5)
print(numeros_con_repeticion) # Genera una lista de 5 números con repeticiones posibles
Para aplicaciones que requieren mayor seguridad (como generación de contraseñas), se usa el módulo secrets:
import secrets
numero_seguro = secrets.randbelow(100)
print(numero_seguro) # Genera un número seguro entre 0 y 99
Para más detalles sobre la generación de números aleatorios en Python, visita la documentación oficial de Python.
Jorge García
Fullstack developer