PYTHON - MODULOS Y PAQUETES

Puedes ver todo el contenido de este vídeo GRATIS, simplemente registrandote

En esta sesión, introducimos el modo de organización de código en módulos y paquetes de Python, de manera análoga a la jerarquía de archivos y directorios.

Cargando video...

NOTA: ¡Este curso se encuentra disponible, completo y 100% gratis para ti!. Solo es necesario registrarse para poder disfrutarlo sin coste.

Descripción del Vídeo

En Python, un módulo está comúnmente representado por un archivo .py. (Un módulo = Un archivo). En un módulo puede haber varias definiciones de clases, funciones, estructuras, etc.

Podemos reutilizar módulos en nuestros programas con import. El módulo que queremos importar debe estar disponible en el mismo directorio de nuestro programa, o en los módulos del sistema (ver sys.path).

Lo anterior implica que los nombres de los archivos .py en los que escribimos código que queremos reutilizar, deben cumplir también las reglas de identificadores de Python (comenzar por letra o subrayado, etc).

Podemos separar las definiciones reutilizables del código ejecutable en un módulo con el condicional __name__ == "__main__"

Los paquetes son agrupaciones de módulos en directorios.

Un paquete debe contener un módulo especial __init__.py. Éste puede estar vacío, pero comúnmente se usa para definir elementos pertenecientes a dicho paquete, importar otros módulos necesarios, etc. El contenido de __init__.py se ejecuta al importar el paquete.


paquetes.py : https://github.com/networkfaculty/Fundamentos-Python/blob/master/17-paquetes.py
ejemplos/
├── __init__.py : https://github.com/networkfaculty/Fundamentos-Python/blob/master/ejemplos/__init__.py
└── simpsons
   ├── __init__.py : https://github.com/networkfaculty/Fundamentos-Python/blob/master/ejemplos/simpsons/__init__.py
   ├── personajes.py : https://github.com/networkfaculty/Fundamentos-Python/blob/master/ejemplos/simpsons/personajes.py

Rating

Global

Ver video en playlist

comments powered by Disqus

Headshot of Juan Paredes

Juan Paredes

Ingeniero de Sistemas con amplia experiencia, especializado en el desarrollo y arquitectura de software.