Desarrollo con Python
  • Conceptos básicos
    • 🐍Introducción a Python
      • 🐍Variables
      • 🐍Strings
      • 🐍Números
      • 🐍Comentarios
      • 🐍Funciones
      • 🐍Funciones Propias
      • 🐍Zen of Python
    • 💿Primer programa
  • Operadores en python
    • ❎Operadores
      • ❎Operadores Aritméticos
      • ❎Operadores de asignación
      • ❎Booleanos
      • ❎Operadores de comparación
      • ❎Operadores lógicos
      • ❎Operadores de identidad
      • ❎Operadores de pertenencia
  • Datos Complejos
    • ▶️Datos complejos
      • ▶️Listas
      • ▶️Tuplas
      • ▶️Diccionarios
      • ▶️Bytes y Bytearrays
      • ▶️Sets
      • ▶️NoneType
    • 💿Caso práctico: Agenda
  • Control de flujo
    • 🛑Estructuras de control de flujo
      • 🛑Sentencias if/elif/else
      • 🛑Sentencia for
      • 🛑Sentencia while
      • 🛑break/continue/pass
    • ⚠️Excepciones en Python3
    • 🎯Caso práctico: 4 in Row
  • Orientacion a objetos
    • 💾Scope y Namespaces
    • 💾Clases en Python 3
    • 💾Métodos y atributos
    • 💾Clases y Objetos
    • 💾Decorators
  • Trabajando con objetos
    • 🔢Trabajando con Objetos
      • 🔢Trabajando con Números
      • 🔢Trabajando con Strings
      • 🔢Trabajando con Listas
      • 🔢Trabajando con Tuplas
      • 🔢Trabajando con Sets
      • 🔢Trabajando con Diccionarios
  • Programación Modular
    • 🧩Programación modular
      • 🧩Paquetes
      • 🧩PIP y paquetes externos
      • 🧩Pandas
      • 🧩NumPy
      • 🧩Matplotlib
      • 📄Caso Práctico
  • Proyectos finales
    • 🐍Videojuego Snake
    • 📥Detección de Spam con Machine Learning
Con tecnología de GitBook
En esta página
  • 1. ¿Qué son los paquetes en Python?
  • 2. Importando todos los módulos de un paquete
  • 3. Subpaquetes
  1. Programación Modular
  2. Programación modular

Paquetes

1. ¿Qué son los paquetes en Python?

Los paquetes permiten estructurar jerárquicamente los módulos que hemos definido.

Para inicializar un directorio dentro de nuestro sistema operativo y que Python lo reconozca como un paquete que contiene módulos que pueden importarse, debe crearse un fichero dentro del directorio con el nombre __init__.py.

El código de __init__.py se invocará cuando el paquete o un módulo del paquete sea importando en el programa. Esto puede utilizarse para establecer código de inicialización de los paquetes o de los módulos.

Para importar un módulo que se encuentra en un paquete debe utilizarse la sintaxis:

import <nombre_paquete>.<nombre_modulo>

from <nombre_paquete>.<nombre_modulo> import <nombre(s)>

2. Importando todos los módulos de un paquete

Podríamos pensar que para importar todos los módulos de un paquete podríamos utilizar la sintaxis:

from <nombre_paquete> import *

Sin embargo, ¿qué es lo que sucede?

Python sigue la siguiente convención: si el archivo __init__.py en el directorio del paquete contiene una lista llamada __all__, se toma como una lista de módulos que deben ser importados cuando se encuentra la sentencia:

from <nombre_paquete> import *.
# Dentro del fichero __init__.py del modulo

__all__ = [
    'mimodulo'
]

3. Subpaquetes

Los paquetes pueden contener un número arbitrario de paquetes anidados. La sintaxis que se utiliza para acceder a los módulos que se encuentran en los paquetes anidados es similar a la anterior pero añadiendo algunos . adicionales:

from <nombre_paquete>.<nombre_subpaquete>.<nombre_modulo> import <nombre(s)>

AnteriorProgramación modularSiguientePIP y paquetes externos

Última actualización hace 1 año

🧩
🧩
Page cover image