Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> python

Paquetes en Python: Estructura, Importación y Mejores Prácticas

Paquetes en Python

Aprende a organizar una base de código en crecimiento con paquetes de Python y a importar tus propios módulos o de terceros de manera eficiente.

Video: Paquetes en Python – Organiza tu Código

¿Qué son los Paquetes?

Al igual que agrupamos archivos en carpetas en el disco para mayor claridad, Python utiliza paquetes para agrupar módulos relacionados. Un paquete es simplemente un directorio que contiene un archivo __init__.py; esto indica a Python que trate la carpeta como un espacio de nombres.

Cuando un proyecto crece, mantener módulos similares juntos en un paquete hace que el proyecto sea manejable y autodocumentado. Los paquetes también pueden contener subpaquetes, replicando la forma en que los directorios pueden anidarse.

Por ejemplo, un proyecto de juego podría tener esta estructura:

Paquetes en Python: Estructura, Importación y Mejores Prácticas

Importando Módulos desde un Paquete

Los módulos se importan usando la notación de punto (.). Para importar start.py desde el paquete Game/Level, usa:

import Game.Level.start

Si start.py define una función select_difficulty(), llámala con el espacio de nombres completo:

Game.Level.start.select_difficulty(2)

Para reducir la verbosidad, puedes importar el módulo al espacio de nombres local:

from Game.Level import start

Ahora select_difficulty se puede acceder como:

start.select_difficulty(2)

Para importaciones aún más concisas, importa la función directamente:

from Game.Level.start import select_difficulty

Luego llámala simplemente:

select_difficulty(2)

Aunque conciso, importar a nivel de función puede provocar colisiones de nombres si diferentes módulos exponen símbolos con el mismo nombre. Usar la ruta completa del paquete mantiene el espacio de nombres explícito y más seguro.

Python resuelve las importaciones de paquetes buscando en los directorios listados en sys.path, igual que hace con los módulos regulares.

python

  1. Dominando tipos de datos en Python: Guía práctica
  2. Dominando operadores en Python: Guía completa
  3. Dominando la sentencia pass en Python: Guía práctica
  4. Dominando argumentos de funciones en Python: Posicionales, por palabra clave y por defecto
  5. Dominando Diccionarios en Python: Creación, Manipulación y Técnicas Avanzadas
  6. Dominando Iteradores en Python: Cómo Funcionan y Cómo Crear los Tuyos
  7. Explicación de Closures en Python: Cómo las Funciones Anidadas Capturan Variables
  8. Dominando datetime en Python: Guía Práctica de Fechas, Horas y Zonas Horarias
  9. Dominar time.sleep() en Python: Mejores Prácticas, Multihilo y Ejemplos Reales
  10. Visión general de Python: Lenguaje de alto nivel, legible, interactivo y orientado a objetos
  11. Números en Python: Entendiendo tipos de datos numéricos inmutables