Post Destacado

Configurando la Impresión Perfecta de un Libro de Excel

Aunque vivimos en una era digital, a veces todavía es necesario imprimir datos, tablas, gráficos, o información de cualquier tipo que hayamos procesado en Excel. Especialmente si estamos hablando de informes financieros, gráficos estadísticos, o simplemente porque preferiremos analizar la información en formato físico. Sin embargo, Excel es muy flexible y las hojas pueden volverse rápidamente muy extensas, lo que puede complicar las tareas de impresión. A continuación, detallaremos el proceso para configurar y preparar tu libro de Excel para imprimirlo de la mejor manera posible en cada caso. Paso 1: Revisión Preliminar Antes de imprimir, debes revisar cómo quedará el documento una vez impreso. Excel ofrece dos opciones para ello: a. Ve a la pestaña "Archivo", luego elige "Imprimir". Aquí puedes ver cómo se verá tu documento antes de imprimirlo. b.    Utiliza la opción 'Diseño de Página'. Esta perspectiva te dará una vista preliminar de cómo se verá tu libro

Encapsulamiento - Pilares de la Programación Orientada a Objetos en Python

El encapsulamiento es el pilar de la programación orientada a objetos que se relaciona con ocultar al exterior determinados estados internos de un objeto, tal que sea el mismo objeto quien acceda o los modifique, pero que dicha acción no se pueda llevar a cabo desde el exterior, llamando a los métodos o atributos directamente.

Si bien en algunos lenguajes (como Java), puede resultar un procedimiento habitual, Python no lo implementa por defecto, pero nos propone una vía alternativa para lograrlo. Esto se hace anteponiendo dos guiones bajos (__) al nombrar un método o atributo. De esa manera, los mismos quedarán definidos como “privados”, y únicamente el mismo objeto podrá acceder a ellos.

class Persona:
    atributo_publico = "Mostrar"   # Accesible desde el exterior
    __atributo_privado = "Oculto"  # No accesible
    # No accesible desde el exterior
    def __metodo_oculto(self):
        print("Este método está oculto")
        self.__variable = 0
    # Accesible desde el exterior
    def metodo_normal(self):
        # El método si es accesible desde el interior
        self.__metodo_oculto()
alumno = Persona()
# alumno.__metodo_oculto()  # Este método no es accesible desde el exterior
alumno.metodo_normal()      # Este método es accesible

Existe un pequeño truco (no recomendado) para acceder a los atributos y métodos ocultos. Dichos métodos están presentes con un nombre algo distinto:

instancia + _ + NombreClase + método/atributo oculto

alumno._Persona__metodo_oculto()
print(alumno._Persona__atributo_privado)