Explicando import en Python - Importar archivos propios
En este tutorial de programación te mostraré cómo separar tu código para tenerlo en distintos archivos y luego usar import
para importar tu propio código Python. Es decir, importar tus propios archivos usando Python.
De esta manera podrás importar otras funciones o clases de distintos archivos programados por ti, usando la palabra reservada import
, del lenguaje Python.
Al final podrás tener un código más limpio y organizado; además de poder reutilizar las funciones que hagas. Te mostraré varios ejemplos y te dejaré mi recomendación.
Para importar tu archivo, basta con que coloques el nombre del mismo después de “import”. Por ejemplo, si tu archivo se llama funciones.py
entonces debes indicar:
import funciones
En los ejemplos te mostraré cómo puedes importar solo una función, una clase, importar todo, renombrar, etcétera.
Primero veamos el archivo que vamos a estar importando en los otros módulos. Es un archivo simple que tiene 2 funciones y una clase, todo esto para ejemplificar la importación en Python:
def decir_hola():
print("Hola mundo")
def saludar(nombre):
print(f"¡Hola, {nombre}!")
class Punto:
def __init__(self):
print("Esto es el init")
Usando esta sintaxis podemos importar una función o clase desde un archivo. Veamos un ejemplo:
from funciones import decir_hola
decir_hola()
De este modo podríamos importar solo las funciones o clases que vayamos a ocupar, y luego usarlas de manera separada.
Modificando el ejemplo de arriba, si quisiéramos importar dos funciones, haríamos esto:
from funciones import decir_hola, saludar
decir_hola()
saludar("Parzibyte")
En Python igualmente podemos importar todas las funciones, variables o clases que existan dentro de un archivo y tenerlas disponibles de manera global como si las hubiésemos declarado en el archivo en donde estamos importando.
Aquí el ejemplo:
from funciones import *
decir_hola()
saludar("Parzibyte")
Si bien no estamos usando namespaces o esas cosas, me gusta llamarlo así. Te aviso que este es mi método recomendado, y es en el que importamos todo el archivo; pero para acceder a sus métodos usamos archivo.cosa
.
Veamos el siguiente ejemplo en donde importamos el archivo completo:
import funciones
funciones.decir_hola()
funciones.saludar("Parzibyte")
Este es mi método favorito porque no importa si hay 2 funciones con el mismo nombre, si las mismas están en un archivo distinto, podemos invocarlas sin problemas por separado, ya que las mismas van a estar aisladas.
Por cierto, también se pueden importar clases:
import funciones
funciones.decir_hola()
funciones.saludar("Parzibyte")
p = funciones.Punto()
Para terminar este tutorial te mostraré cómo puedes cambiar el nombre de una función o clase al importarla. Se puede hacer usando as
como se ve en el siguiente ejemplo:
from funciones import decir_hola as dh
dh()
También funciona para cambiar el nombre de todo un paquete que estás importando (ya sea un paquete nativo, de PIP o un archivo tuyo):
import funciones as f
f.decir_hola()
f.saludar("Parzibyte")
Así es como podemos importar nuestros propios archivos, clases, variables o funciones en Python para tener todo separado y aislado.
Recuerda que es una buena práctica separar los conceptos y hacer nuestro código reutilizable, además de tener las cosas separadas para que el mantenimiento de las mismas sea más fácil.
Ya te dije anteriormente que te recomiendo el ejemplo 3, mismo que puedes renombrar como el segundo fragmento de código del ejemplo 4.
Finalmente te dejo aquí el repositorio con los ejemplos vistos en el post. No olvides que puedes leer más sobre Python en mi blog.
En este post te quiero compartir un código de C++ para listar y cancelar trabajos…
Gracias a WebAssembly podemos ejecutar código de otros lenguajes de programación desde el navegador web…
Revisando y buscando maneras de imprimir un PDF desde la línea de comandos me encontré…
Esta semana estuve recreando la API del plugin para impresoras térmicas en Android (HTTP a…
Hoy te enseñaré a extraer la cadena base64 de una clave PEM usando una función…
Encender un foco con un Bot de Telegram es posible usando una tarjeta como la…
Esta web usa cookies.
Ver comentarios
Muchas gracias, muy bien explicado, quedó clarísimo.