Si te estás familiarizando con Python, rápidamente te encontrarás con el concepto de Módulos. Estos te permiten estructurar tu código y crear funciones reutilizables. No solo ayuda al orden, sino que también mejora la eficiencia de tu programación. En este tutorial aprenderás cómo crear e importar módulos en Python. Veremos cómo trabajar con un archivo propio para proporcionar varias funciones matemáticas y luego usarlas en otro script de Python.
Principales conclusiones
- Los módulos son simplemente archivos de Python que contienen diferentes funciones.
- Importar módulos permite una mejor estructuración de tu código.
- Puedes importar módulos con diferentes nombres o solo importar funciones específicas.
- A través de nombres alias e importaciones selectivas evitas conflictos de nombres.
Guía paso a paso
Crear un módulo
Para crear un módulo en Python, primero necesitas un archivo con las funciones correspondientes. En nuestro ejemplo, crearemos un archivo llamado arithmetik.py que contenga algunas funciones matemáticas básicas como suma, resta y multiplicación. Puedes crear el archivo en cualquier editor de texto.

En arithmetik.py defines las funciones individuales:
def restar(a, b): return a - b
def multiplicar(a, b): return a * b
Aquí tenemos tres funciones simples que usarás más tarde en tu script principal.
Importar un módulo
Ahora que has creado tu módulo arithmetik.py, puedes usarlo en otro script. Crea un segundo archivo llamado rechner.py, que esté en el mismo directorio que tu módulo.

En rechner.py importas el módulo con el siguiente comando:
Ahora puedes acceder a las funciones de tu módulo. Define algunas variables para demostrarlo:
Ahora puedes llamar, por ejemplo, a la función de suma y mostrar el resultado:
Esta línea mostrará el resultado de la suma de a y b. Si ahora ejecutas el script, verás que la salida es "17".
Uso de nombres alias
Si deseas importar el módulo con un nombre más corto, también es posible. Así:
Ahora puedes llamar a las funciones con el alias ar, lo que hace que tu código sea un poco más corto:
A pesar del nombre diferente, todo funciona como de costumbre. Solo es cuestión de preferencia.

Importación selectiva de funciones
Algunas veces no necesitas todas las funciones de un módulo. Puedes seleccionar cuáles funciones deseas importar. Para ello, utilizas la siguiente sintaxis:
Ahora la función sumar está disponible directamente, sin necesidad de especificar el nombre del módulo.
Por lo tanto, cuando llamas a sumar(a, b), la autocompletación te ofrecerá eso directamente, sin incluir otras funciones.
Resolución de conflictos de nombres
Otra ventaja de los nombres alias y la importación selectiva es la posibilidad de evitar conflictos de nombres. Si tienes un módulo que tiene el mismo nombre que una biblioteca externa, aún puedes utilizar las funciones.
Si tu módulo arithmetik.py tiene el mismo nombre que el módulo matemático math.py, tendrías un conflicto. Sin embargo, con aliasing o importación selectiva, puedes evitar esto.

Cierre sobre Módulos e Importaciones
Como has visto hasta ahora, los módulos son una parte central de la programación en Python. Te ayudan a hacer que tu código sea modular y reutilizable. La importación y los diferentes métodos de importación te dan flexibilidad y control sobre el acceso a las funciones en tus scripts.
Resumen - Fundamentos sobre el uso y la importación de módulos de Python
En este tutorial, has aprendido cómo crear, importar y usar módulos simples de Python. La importancia de estructurar tu código se hace evidente a través de los módulos y las diferentes posibilidades de importación. Así puedes hacer que tu programación sea mucho más efectiva.
Preguntas Frecuentes
¿Qué es un módulo en Python?Un módulo es un archivo de Python que define funciones, clases y variables que pueden ser utilizadas en otros scripts de Python.
¿Cómo importo un módulo?Puedes importar un archivo usando el comando import nombredelmodulo.
¿Cuál es la diferencia entre import module y from module import function?El primer comando importa todo el módulo, mientras que el segundo comando solo importa la función específica.
¿Cómo puedo evitar conflictos de nombres?Puedes usar nombres alias o importar funciones de manera selectiva para evitar conflictos con otros módulos.