Python · Sección 7

Módulos, paquetes y entornos virtuales

Reutilización mediante módulos propios y estándar, importaciones claras, instalación de paquetes y aislamiento de dependencias por proyecto.

3
lecciones
3
ejercicios resueltos
CONTENIDO ORIGINAL

Avanza en orden. Cada lección está redactada para Palta es Cool, utiliza ejemplos propios y termina con una actividad cuya respuesta puedes desplegar.

ANTES DE EMPEZAR

Ubícate antes de avanzar

01 / PUNTO DE PARTIDA

Conviene haber comprendido Funciones, parámetros y alcance.

02 / META OBSERVABLE

Al terminar deberías poder relacionar Módulos e importación con Paquetes y resolver un caso nuevo.

03 / TIEMPO SUGERIDO

Reserva entre 35 y 55 minutos para lectura, ejemplos, tres comprobaciones y cierre.

04 / PREPARA EL LABORATORIO

Instala Python 3 y utiliza IDLE o un editor como VS Code. Desde NumPy y Pandas trabaja dentro de un entorno virtual.

Abrir la guía de herramientas →
Diagnóstico rápido: ¿cómo se relacionan Módulos e importación y Paquetes?

No necesitas acertar todavía. Escribe una hipótesis de dos líneas y compárala con tu respuesta al finalizar; si puedes corregirla y justificar el cambio, hubo aprendizaje.

Ruta guiada · 3 lecciones

Aprende el tema paso a paso

Organizarás código reutilizable y dependencias para que un proyecto funcione de la misma manera fuera de tu computador.

Al terminar podrás
  • Un módulo es un archivo Python que expone nombres reutilizables
  • Separar archivos ayuda cuando cada módulo tiene una responsabilidad
  • Un entorno virtual separa paquetes por proyecto
01
Reutilizar código

Un módulo es un archivo Python que expone nombres reutilizables

import carga un módulo y permite acceder a sus funciones o variables mediante un espacio de nombres. Importar el módulo completo conserva el contexto; from selecciona nombres concretos. Los alias ayudan cuando son convencionales y no ocultan significado.

01

La biblioteca estándar incluye math, random, csv, json y pathlib.

02

modulo.nombre muestra de dónde proviene una función.

03

Evita import * porque vuelve ambiguo el origen de los nombres.

Comprueba lo aprendido · 01

¿Qué ventaja tiene escribir math.sqrt frente a importar sqrt directamente?

Mostrar respuesta

Hace visible el espacio de nombres y reduce choques con otra función llamada sqrt. La importación selectiva puede ser válida cuando el contexto sigue siendo claro.

02
Crear módulos propios

Separar archivos ayuda cuando cada módulo tiene una responsabilidad

Un archivo utilidades.py puede definir funciones que otro script importa. El bloque if __name__ == "__main__" permite ejecutar una demostración solo cuando el archivo se abre directamente y no al importarlo.

01

Agrupa funciones relacionadas, no archivos arbitrariamente pequeños.

02

Evita ejecutar tareas costosas o destructivas durante la importación.

03

Documenta la interfaz que otros módulos pueden usar.

Comprueba lo aprendido · 02

¿Qué evita el bloque if __name__ == "__main__"?

Mostrar respuesta

Evita que el código de demostración se ejecute automáticamente al importar el módulo. Las definiciones quedan disponibles sin producir ese efecto lateral.

03
Aislar dependencias

Un entorno virtual separa paquetes por proyecto

pip instala paquetes en el intérprete activo. Un entorno virtual crea un espacio aislado para que dos proyectos usen dependencias distintas. Registrar versiones y un archivo de requisitos mejora la reproducibilidad.

01

Activa el entorno antes de instalar o ejecutar.

02

python -m pip vincula pip con el intérprete visible.

03

No subas la carpeta .venv; registra las dependencias necesarias.

Comprueba lo aprendido · 03

¿Por qué “funciona en mi equipo” no basta como evidencia?

Mostrar respuesta

Porque otro equipo puede tener versiones o paquetes diferentes. Un entorno reproducible registra el intérprete, las dependencias y los pasos necesarios para reconstruirlo.

Resumen de la sección

Tu recorrido en tres ideas

  1. Un módulo es un archivo Python que expone nombres reutilizables
  2. Separar archivos ayuda cuando cada módulo tiene una responsabilidad
  3. Un entorno virtual separa paquetes por proyecto
CIERRE DE LA SECCIÓN

Comprueba que puedes usarlo

Antes de continuar, revisa estos tropiezos frecuentes y resuelve un caso sin copiar los ejemplos.

ERROR 01

Usar import * y perder de vista de dónde proviene cada nombre.

ERROR 02

Instalar paquetes globalmente y no poder reconstruir el entorno del proyecto.

DESAFÍO INTEGRADOR

Ahora hazlo sin guía

Separa funciones de conversión en un módulo propio, úsalas desde un programa principal y documenta cómo recrear el entorno.

Mostrar pauta de corrección
Una respuesta sólida:
  • Los imports son explícitos y no producen efectos inesperados.
  • El proyecto funciona desde un entorno virtual nuevo.
  • Las dependencias y el comando de ejecución quedan registrados.