Cuando empezamos a programar en Python, una de las grandes ventajas del lenguaje es la enorme cantidad de herramientas que ya vienen incluidas. Estas herramientas se agrupan en módulos y librerías que podemos importar para resolver tareas comunes sin tener que programarlo todo desde cero.
En esta guía vamos a conocer algunas de las librerías básicas de Python que todo principiante debería manejar, con ejemplos simples y prácticos.
¿Qué es una librería en Python?
Una librería es un conjunto de funcionalidades reutilizables que podemos incorporar a nuestros programas.
Por ejemplo, si necesitamos calcular una raíz cuadrada, no hace falta escribir el algoritmo manualmente. Podemos usar el módulo math:
import math numero = 25 resultado = math.sqrt(numero) print(resultado)
Resultado:
5.0
Biblioteca estándar vs paquetes externos
Python incluye una gran cantidad de módulos en su biblioteca estándar. Estos no necesitan instalación adicional.
Por ejemplo:
import math import random import json
En cambio, existen paquetes externos como pygame, requests o pandas que normalmente deben instalarse con pip.
pip install pygame
La diferencia es importante: importar no es lo mismo que instalar.
1. math
El módulo math permite realizar operaciones matemáticas comunes.
import math print(math.sqrt(81)) print(math.pow(2, 5)) print(math.pi) print(math.ceil(4.2)) print(math.floor(4.8))
Algunas funciones útiles:
sqrt(): raíz cuadrada;pow(): potencia;ceil(): redondeo hacia arriba;floor(): redondeo hacia abajo;pi: constante π.
2. random
random se utiliza para trabajar con valores aleatorios.
import random numero = random.randint(1, 10) print(numero)
También podemos elegir un elemento al azar:
import random nombres = ["Ana", "Juan", "Pedro", "Lucía"] ganador = random.choice(nombres) print(ganador)
Es especialmente útil para juegos, sorteos, simulaciones y generación de datos de prueba.
3. datetime
El módulo datetime permite trabajar con fechas y horas.
from datetime import datetime ahora = datetime.now() print(ahora)
También podemos acceder a partes individuales:
print(ahora.year) print(ahora.month) print(ahora.day) print(ahora.hour)
Y formatear la fecha:
fecha = ahora.strftime("%d/%m/%Y")
print(fecha)
4. os
os permite interactuar con el sistema operativo.
import os
print(os.getcwd())
getcwd() devuelve la carpeta actual desde donde se está ejecutando el programa.
También podemos listar archivos:
archivos = os.listdir(".") for archivo in archivos: print(archivo)
Crear una carpeta:
os.mkdir("nueva_carpeta")
5. sys
El módulo sys ofrece información y herramientas relacionadas con el intérprete de Python.
import sys
print(sys.version)
También permite leer argumentos enviados desde la terminal.
Si ejecutamos:
python programa.py Jorge
Podemos acceder al valor con:
import sys
print(sys.argv)
6. statistics
statistics simplifica cálculos estadísticos básicos.
import statistics numeros = [10, 20, 30, 40, 50] print(statistics.mean(numeros)) print(statistics.median(numeros))
Funciones frecuentes:
mean(): promedio;median(): mediana;mode(): moda.
7. json
JSON es uno de los formatos más utilizados para intercambiar y guardar datos.
Python incluye el módulo json para trabajar con este formato.
import json persona = { "nombre": "Ana", "edad": 25 } texto_json = json.dumps(persona) print(texto_json)
También podemos guardar datos en un archivo:
import json persona = { "nombre": "Ana", "edad": 25 } with open("persona.json", "w", encoding="utf-8") as archivo: json.dump(persona, archivo, ensure_ascii=False, indent=4)
8. csv
Los archivos CSV se utilizan mucho para exportar e importar información en hojas de cálculo y sistemas administrativos.
import csv datos = [ ["Nombre", "Edad"], ["Ana", 25], ["Pedro", 32] ] with open("personas.csv", "w", newline="", encoding="utf-8") as archivo: escritor = csv.writer(archivo) escritor.writerows(datos)
9. pathlib
pathlib ofrece una forma moderna y clara de trabajar con rutas y archivos.
from pathlib import Path ruta = Path("datos") if not ruta.exists(): ruta.mkdir()
También podemos crear rutas de manera sencilla:
archivo = ruta / "usuarios.txt"
print(archivo)
Para código nuevo, muchas veces pathlib resulta más cómodo que trabajar directamente con cadenas y os.path.
10. time
time permite trabajar con pausas y mediciones simples de tiempo.
import time print("Comenzando...") time.sleep(2) print("Pasaron dos segundos")
También podemos medir cuánto tarda una parte del programa:
import time inicio = time.time() for i in range(1000000): resultado = i * 2 fin = time.time() print("Tiempo:", fin - inicio)
Formas de importar módulos
Podemos importar un módulo completo:
import math print(math.sqrt(16))
O importar solamente lo que necesitamos:
from math import sqrt print(sqrt(16))
También podemos usar un alias:
import statistics as stats numeros = [10, 20, 30] print(stats.mean(numeros))
Módulo, paquete y librería: ¿son lo mismo?
En conversaciones cotidianas se suelen usar como sinónimos, pero técnicamente existen diferencias:
- módulo: normalmente es un archivo Python que contiene funciones, clases o variables;
- paquete: agrupa varios módulos;
- librería: término general para un conjunto de herramientas reutilizables.
Para empezar no es necesario memorizar estas diferencias, pero conviene saber que existen.
Ejercicio práctico: generar estadísticas y guardarlas en JSON
Vamos a combinar random, statistics y json.
import random import statistics import json numeros = [] for i in range(20): numeros.append(random.randint(1, 100)) resultado = { "numeros": numeros, "promedio": statistics.mean(numeros), "mediana": statistics.median(numeros), "minimo": min(numeros), "maximo": max(numeros) } print(resultado) with open("estadisticas.json", "w", encoding="utf-8") as archivo: json.dump(resultado, archivo, ensure_ascii=False, indent=4)
Este pequeño programa:
- genera 20 números aleatorios;
- calcula promedio y mediana;
- obtiene mínimo y máximo;
- guarda toda la información en un archivo JSON.
Desafío
Modificá el ejercicio anterior para que también guarde la fecha y hora en que se generaron las estadísticas utilizando datetime.
Después generá un archivo CSV con todos los números utilizando el módulo csv.
¿Qué librería conviene aprender primero?
No hace falta estudiar todas de memoria. Lo importante es saber que existen y reconocer qué problema resuelve cada una.
Para comenzar, math, random, datetime, json y pathlib son excelentes opciones porque aparecen frecuentemente en proyectos reales y ejercicios.
¿Te sirvió esta guía? ☕
Si este contenido te ayudó y querés apoyar a Club Programador para seguir publicando ejercicios, proyectos y guías gratuitas, podés colaborar mediante:
Seguí aprendiendo Python
Encontrá todos los contenidos de Python en nuestra guía principal:
Aprender Python: guía completa paso a paso →
Descubre más desde Club Programador
Suscríbete y recibe las últimas entradas en tu correo electrónico.