Post Destacado

¿Buscas trabajo y no has certificado en Excel? 🤔

Hoy quiero hablarte sobre un tema que puede cambiar tu vida profesional: la certificación oficial de Excel MO-200. Puede que te estés preguntando, ¿por qué debería importarme obtener esta certificación? Pues, sigue leyendo y descubrirás las ventajas que puede ofrecerte. ¿Qué es la Certificación MO-200? La certificación MO-200, también conocida como "Microsoft Office Specialist: Excel Associate (Excel and Excel 2019)", es una credencial oficial otorgada por Microsoft . Este examen valida tus habilidades en Excel, asegurando que eres capaz de manejar eficientemente una amplia gama de tareas dentro de esta poderosa herramienta. Básicamente, todo el mundo agrega en sus CV la frase " Dominio de Excel ", pero casi nadie se preocupa por demostrarlo oficialmente. Esta es tu oportunidad para ser el candidato preferido en tu próxima búsqueda. ¿Por Qué Deberías Considerarla? 1. Mejora tu Currículum:    Tener una certificación oficial en tu currículum te diferencia de otros can

La forma correcta de importar librerías en Python

 


Utilizar Python es sinónimo de aprovechar sus librerías: nos proporcionan acceso a códigos más complejos que nos ahorran mucho trabajo de desarrollo, y además son sencillas de instalar e importar para utilizarlas en nuestros proyectos. Sin embargo, hay distintas formas en las que podemos importar librerías en Python, y debemos tener muy en claro qué forma elegimos y por qué, si queremos evitar errores.

Utilicemos por ejemplo la librería os (una librería muy popular que nos permite interactuar con directorios y archivos del sistema, aunque no es el foco ahora mismo), y analicemos la importación de la librería y sus métodos a través de las diferentes alternativas que existen para hacerlo, explorando sus ventajas, desventajas, y consecuencias para nuestro código.

Supongamos que, en última instancia, necesitamos acceder a la función system de la librería os, y también a la función incorporada open() (que no pertenece a os, sino que forma parte del lenguaje, pero que también existe en la librería os con algunas diferencias). Para importar la librería, tendríamos tres opciones (con dos de ellas, muy similares entre sí):

  1. import os
  2. from os import *
  3. from os import system
La primera y la segunda opción importarán la librería completa (con una importante diferencia, que ya veremos), mientras que la última importará únicamente el método system de la librería.

Debemos saber que la segunda forma tiene riesgos, ya que no solo lograremos acceso a la librería os, sino que lo haremos reemplazando todo el espacio de nombres de nuestro código con el espacio de nombres de la librería os. En particular, esto ocasiona que se sobrescriba la función incorporada open() (la cual, al venir incorporada al lenguaje, no tiene necesidad de importar librería alguna para funcionar), por el método open() de la librería os, el cual tiene diferentes parámetros, tal como podemos verificar en la documentación (Método open() de la librería os, Método open() incorporado).

Cuando importamos una librería mediante:

import os

accedemos a los métodos de dicha librería en nuestro propio código anteponiendo el nombre de la librería (por ejemplo os.system('cls')), pero cuando lo importamos "completo":

form os import *

los métodos de dicha librería ocupan ahora nuestro espacio de nombres, por lo cual ya no necesitamos anteponer el nombre de la librería (permitiéndonos escribir directamente system('cls')). Como riesgo asociado, ahora no podemos diferenciar el método open() de la librería importada del que existe por defecto en Python, siendo de hecho reemplazado, generando errores si esto no formaba parte de nuestros planes.

En síntesis: si necesitamos acceder a varias funciones o clases de una misma librería, una buena solución es importarla de la primera forma:

import os

e importar, en caso de ser necesario, métodos específicos de dicha librería de manera explícita (para poder utilizarlos varias veces, sin necesidad de anteponer el nombre de la librería a la que pertenece), solo en los casos donde no exista riesgo de sobreescribir otros métodos que necesitamos.

from os import system 

Por lo que vemos aquí que la primera y tercera alternativa pueden coexistir en el código, siendo de hecho complementarias.