Generar números aleatorios es una tarea común en programación, especialmente en simulaciones, juegos y pruebas estadísticas. Python facilita esta tarea mediante la biblioteca estándar random, que ofrece una variedad de funciones para generar diferentes tipos de números aleatorios.
random
Para generar números aleatorios en Python, primero debes importar la biblioteca random, que está incluida en la biblioteca estándar de Python.
import random
Para generar un número entero aleatorio dentro de un rango específico, utiliza la función randint() de la biblioteca random.
Ejemplo:
import random
numero_aleatorio = random.randint(1, 10)
print(numero_aleatorio)
Explicación:
random.randint(1, 10) genera un número entero aleatorio entre 1 y 10, incluyendo ambos límites.
Si necesitas un número aleatorio con decimales (flotante), puedes usar la función random.uniform(). Esta función te permite especificar el rango dentro del cual deseas generar el número flotante.
Ejemplo:
import random
numero_flotante_aleatorio = random.uniform(1.5, 5.5)
print(numero_flotante_aleatorio)
Explicación:
random.uniform(1.5, 5.5) genera un número flotante aleatorio entre 1.5 y 5.5.
La función random.random() genera un número flotante aleatorio entre 0 y 1.
Ejemplo:
import random
numero_aleatorio = random.random()
print(numero_aleatorio)
Explicación:
random.random() devuelve un número flotante aleatorio entre 0.0 y 1.0.
Si necesitas un número aleatorio que siga una distribución normal (gaussiana), puedes usar la función random.gauss().
Ejemplo:
import random
numero_normal = random.gauss(0, 1)
print(numero_normal)
Explicación:
random.gauss(0, 1) genera un número aleatorio con una media de 0 y una desviación estándar de 1.
Si tienes una lista y quieres seleccionar un elemento aleatorio de ella, puedes usar la función random.choice().
Ejemplo:
import random
colores = ['rojo', 'azul', 'verde', 'amarillo']
color_aleatorio = random.choice(colores)
print(color_aleatorio)
Explicación:
random.choice(colores) selecciona y devuelve un elemento aleatorio de la lista colores.
Puedes generar una lista de números aleatorios utilizando una comprensión de listas junto con random.randint() o random.uniform().
Ejemplo:
import random
lista_numeros = [random.randint(1, 100) for _ in range(10)]
print(lista_numeros)
Explicación:
Para reproducir resultados aleatorios en diferentes ejecuciones del programa, puedes fijar una semilla usando random.seed(). Esto es útil para pruebas o simulaciones donde se necesita replicar exactamente el mismo conjunto de números aleatorios.
Ejemplo:
import random
random.seed(42)
print(random.randint(1, 10))
print(random.randint(1, 10))
Explicación:
random.seed(42) fija la semilla, lo que hace que los números aleatorios generados a continuación sean los mismos cada vez que se ejecute el código.
1. Generar una lista de números flotantes aleatorios:
lista_flotantes = [random.uniform(0, 1) for _ in range(5)]
print(lista_flotantes)
2. Barajar una lista de elementos:
import random
lista = [1, 2, 3, 4, 5]
random.shuffle(lista)
print(lista)
3. Generar un número aleatorio de 5 dígitos:
numero_aleatorio = random.randint(10000, 99999)
print(numero_aleatorio)
4. Elegir múltiples elementos aleatorios de una lista sin repetición:
import random
lista = ['manzana', 'banana', 'pera', 'naranja', 'uva']
seleccionados = random.sample(lista, 3)
print(seleccionados)
Para obtener más información sobre la generación de números aleatorios en Python y las diferentes funciones disponibles, visita la documentación oficial de Python.
Jorge García
Fullstack developer