Translate

martes, 1 de abril de 2025

Importación de módulos y uso de paquetes en Python


Python es un lenguaje que permite organizar el código en módulos y paquetes, facilitando la reutilización y la modularidad. 

Un módulo en Python es simplemente un archivo `.py` que contiene funciones, clases y variables que pueden ser reutilizadas en otros archivos.


Ejemplo de módulo (`mi_modulo.py`):

Definimos una función en el módulo


def saludar(nombre):

    return f"Hola, {nombre}!"


Para usar un módulo en otro script, se puede importar con import:


import mi_modulo

print(mi_modulo.saludar("Emanuel"))  # Salida: Hola, Emanuel!


También se puede importar solo un elemento específico:


from mi_modulo import saludar

print(saludar("Mundo"))


Si se quiere importar todo el contenido de un módulo pero con un alias:


import mi_modulo as mod

print(mod.saludar("Python"))


Un paquete es una carpeta que contiene múltiples módulos y un archivo especial `__init__.py`, el cual indica que la carpeta debe tratarse como un paquete.


Estructura de un paquete:


mi_paquete/

│── __init__.py

│── modulo1.py

│── modulo2.py



Ejemplo de modulo1.py en mi_paquete:


def sumar(a, b):

    return a + b


Ejemplo de modulo2.py en mi_paquete:


def restar(a, b):

    return a - b


Para importar módulos desde un paquete:


from mi_paquete import modulo1, modulo2

print(modulo1.sumar(5, 3))  # Salida: 8

print(modulo2.restar(10, 4))  # Salida: 6


También se puede importar solo una función específica:


from mi_paquete.modulo1 import sumar

print(sumar(7, 2))


Importación relativa vs. absoluta


- Importación absoluta: Se usa la ruta completa desde el paquete raíz.

 

 from mi_paquete.modulo1 import sumar


- Importación relativa: Se usa `.` o `..` para referirse a módulos dentro del mismo paquete.

 

 from .modulo1 import sumar  # Desde el mismo paquete

 from ..otro_paquete.modulo3 import dividir  # Desde un paquete hermano


Python incluye una gran cantidad de módulos en su biblioteca estándar, que pueden ser importados directamente:


import math

print(math.sqrt(25))  # Salida: 5.0


Para instalar e importar paquetes de terceros (ejemplo: requests):


$ pip install requests



import requests

response = requests.get("https://api.github.com")

print(response.status_code)


El uso de módulos y paquetes en Python permite mantener el código organizado, reutilizable y fácil de mantener. Con las diferentes opciones de importación, puedes estructurar tus proyectos de manera eficiente.