Creación de módulos importables
Tip
Consulte la pestaña Texto e imágenes para obtener más detalles.
Una vez que el programa tiene más de una serie de funciones, mantener todo en un solo archivo es difícil de navegar. Python resuelve esto con módulos. Un módulo es solo un .py archivo cuyas funciones y variables se pueden reutilizar de otros archivos.
Creación de su propio módulo
Cualquier archivo Python que escriba se puede importar como módulo. El nombre del módulo es el nombre de archivo sin la .py extensión .
Supongamos que tiene este archivo: math_utils.py
# math_utils.py
def add(a, b):
return a + b
def multiply(a, b):
return a * b
Importación de un módulo
Desde otro archivo de la misma carpeta, puede incorporar math_utils y usar sus funciones:
# app.py
import math_utils
print(math_utils.add(2, 3)) # Output: 5
print(math_utils.multiply(4, 5)) # Output: 20
Importación de nombres específicos
Si solo necesita algunos elementos de un módulo, puede importarlos por su nombre. Esta sintaxis le permite usarlos sin el prefijo del módulo:
from math_utils import add, multiply
print(add(2, 3)) # Output: 5
print(multiply(4, 5)) # Output: 20
Uso de un alias
Si un nombre de módulo es largo o entra en conflicto con otro nombre, puede asignarle un alias más corto con as:
import math_utils as mu
print(mu.add(2, 3)) # Output: 5
Verá este patrón a menudo con bibliotecas de terceros, por ejemplo, import pandas as pd.
El bloque if __name__ == "__main__":
Cuando usted import un archivo, Python ejecuta el código que contiene. Si desea incluir código que solo se ejecute cuando el archivo se ejecute directamente, colóquelo en un if __name__ == "__main__": bloque:
# math_utils.py
def add(a, b):
return a + b
if __name__ == "__main__":
# Quick self-test — only runs when this file is executed directly
print(add(2, 3))
Este patrón permite que un archivo funcione como un script independiente y como módulo importable.
¿Por qué importan los módulos?
- Mantienen cada archivo centrado en una sola responsabilidad.
- Hacen que el código sea más fácil de probar, ya que las funciones residen en un solo lugar.
- Hacen que sea natural compartir y reutilizar código entre proyectos.