Keep your place in this quest

Log in or sign up for free to subscribe, follow lesson progress, and access more learning content.

Ahora que sabes qué son los módulos, vamos un paso más allá y hablemos de los paquetes en Python.

Un paquete es una manera de agrupar módulos relacionados juntos en una sola carpeta organizada.
Si los módulos son como herramientas individuales, un paquete es como una caja de herramientas que contiene varias herramientas ordenadamente organizadas.


¿Qué constituye un paquete?

Un paquete es simplemente un directorio que contiene:

  • Un archivo __init__.py (aunque esté vacío)
  • Uno o más archivos módulo (.py)
  • Sub-paquetes opcionales (carpetas con su propio __init__.py)

El archivo __init__.py se ejecuta cuando se importa el paquete.
Se puede usar para configurar importaciones predeterminadas, definir variables o ejecutar código de inicialización.

Ejemplo de estructura de paquete

Aquí hay un paquete sencillo llamado mypackage:

mypackage/
__init__.py
module1.py
module2.py

Usando __init__.py para importaciones predeterminadas

Dentro de __init__.py, puedes elegir qué partes del paquete están disponibles directamente cuando alguien lo importa.

Ejemplo — en mypackage/__init__.py:

from .module1 import my_function
from .module2 import another_function

De esta manera, cuando importas el paquete, puedes usar estas funciones sin tener que importar cada módulo individualmente.

Importar y usar el paquete

Ejemplo — en otro archivo Python:

import mypackage

mypackage.my_function()
mypackage.another_function()

Aquí:

  • import mypackage ejecuta el código en __init__.py.
  • Las funciones de module1 y module2 están disponibles porque las importamos en __init__.py.
CONSEJO: Aún puedes importar módulos específicos desde un paquete si lo prefieres:
from mypackage import module1

¿Por qué usar paquetes?

Los paquetes te ayudan a: • Organizar tu código en secciones lógicas. • Reutilizar módulos relacionados en distintos proyectos. • Escalar tus programas a medida que crecen en complejidad.

Ya sea que trabajes en una aplicación grande o simplemente quieras mantener tu código ordenado, los paquetes son una piedra angular para proyectos Python limpios y mantenibles.


A continuación, aprenderemos más sobre importar módulos y paquetes usando diferentes técnicas — y cuándo elegir cada una.