¿Cómo importar módulos en Python?

| Última modificación: 3 de febrero de 2025 | Tiempo de Lectura: 3 minutos
0
(0)

Los módulos en Python permiten organizar el código en archivos separados, facilitando el mantenimiento y la reutilización. En lugar de copiar y pegar funciones en distintos programas, es posible definirlas en un módulo e importarlas cuando sea necesario.

Un módulo es simplemente un archivo de Python (.py) que puede contener funciones, clases y variables. Python ofrece una amplia biblioteca estándar de módulos, pero también permite a los desarrolladores crear sus propios módulos personalizados.

python

Importar módulos en Python

Para utilizar un módulo en Python, se usa la sentencia import junto con el nombre del módulo. Esto permite acceder a sus funciones y variables mediante el operador de punto (.).

Ejemplo de importación de un módulo estándar

pythonCopiarEditarimport math
num = 4
print(math.sqrt(num))  # Resultado: 2.0

El intérprete importa el módulo math, lo que permite acceder a sus funciones, como sqrt().

Cada módulo solo se importa una vez por sesión, por lo que si se realizan cambios en un módulo, es necesario reiniciar el intérprete o usar reload().

Crear y utilizar módulos propios en Python

Para definir un módulo, basta con crear un archivo Python con funciones y variables.

Ejemplo: módulo calculation.py

pythonCopiarEditardef add(x, y):
    return x + y

def sub(x, y):
    return x - y

Luego, en otro archivo, se puede importar este módulo y utilizar sus funciones:

pythonCopiarEditarimport calculation
print(calculation.add(1, 2))  # Resultado: 3

El intérprete busca el archivo calculation.py y lo carga para permitir su uso en otros programas.

Otras formas de importar módulos en Python

Python permite importar módulos de varias maneras según las necesidades del programa.

Importar funciones específicas

pythonCopiarEditarfrom calculation import add
print(add(1, 2))  # Se puede llamar directamente sin usar calculation.add()

Esto evita la necesidad de escribir calculation.add(), pero solo importa la función add().

Importar varias funciones

pythonCopiarEditarfrom calculation import add, sub

Se pueden importar múltiples funciones separadas por comas.

Importar todo el contenido de un módulo

pythonCopiarEditarfrom calculation import *
print(add(1, 2))
print(sub(3, 2))

Esta práctica no se recomienda en proyectos grandes porque puede hacer el código menos legible.

Renombrar módulos

pythonCopiarEditarimport calculation as cal
print(cal.add(1, 2))

Se usa as para cambiar el nombre del módulo y facilitar su uso en el código.

Ruta de búsqueda de módulos

Python sigue una secuencia lógica para encontrar un módulo cuando se importa:

  1. Verifica si el módulo es parte de los módulos incorporados.
  2. Busca el archivo .py en el directorio actual.
  3. Consulta las rutas listadas en sys.path.

Si un módulo está ubicado en otra carpeta, se puede agregar manualmente su ruta:

pythonCopiarEditarimport sys
sys.path.append('/ruta/del/modulo')
import calculation

Esto permite importar módulos desde ubicaciones externas.

Archivos Compilados en Bytecode

Python optimiza la importación de módulos generando archivos .pyc, que contienen el código en bytecode, reduciendo el tiempo de carga en futuras importaciones. Estos archivos suelen almacenarse en la carpeta __pycache__.

Inspección de módulos con dir()

Para listar los atributos y funciones definidas en un módulo, se puede usar dir():

pythonCopiarEditarimport calculation
print(dir(calculation))

El resultado muestra las funciones add y sub, junto con otros atributos internos del módulo.

Conclusión

Importar módulos en Python permite estructurar el código de manera eficiente, evitando la duplicación y facilitando la reutilización. Python proporciona una amplia biblioteca de módulos estándar, pero también permite crear módulos personalizados.

Con una correcta gestión de módulos, el desarrollo de software en Python se vuelve más organizado, modular y fácil de mantener.

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en una estrella para puntuarlo!

Promedio de puntuación 0 / 5. Recuento de votos: 0

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Desarrollo web

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado

Conviértete en Full Stack Deeveloper en solo 10 meses. Accede a un sector con el 98,49% de empleabilidad con sueldos de hasta 80K.