ComenzarEmpieza gratis

Propiedades de solo lectura

La clase LoggedDF del Capítulo 2 era una extensión de la clase pandas DataFrame que tenía un atributo adicional created_at que almacenaba la marca de tiempo en que se creó el DataFrame, para que el usuario pudiera ver lo desactualizados que están los datos.

Pero esa clase no era muy útil: podíamos asignar cualquier valor a created_at después de crear el DataFrame, ¡desvirtuando así todo el sentido del atributo! Ahora, mediante las propiedades, podemos hacer que el atributo sea de sólo lectura.

La clase LoggedDF del Capítulo 2 está a tu disposición en el panel de scripts.

Este ejercicio forma parte del curso

Programación orientada a objetos en Python

Ver curso

Ejercicio interactivo práctico

Prueba este ejercicio completando el código de muestra.

import pandas as pd
from datetime import datetime

# LoggedDF class definition from Chapter 2
class LoggedDF(pd.DataFrame):
    def __init__(self, *args, **kwargs):
        pd.DataFrame.__init__(self, *args, **kwargs)
        self.created_at = datetime.today()

    def to_csv(self, *args, **kwargs):
        temp = self.copy()
        temp["created_at"] = self.created_at
        pd.DataFrame.to_csv(temp, *args, **kwargs)   

# Instantiate a LoggedDF called ldf
ldf = LoggedDF({"col1": [1,2], "col2":[3,4]}) 

# Assign a new value to ldf's created_at attribute and print
____ = ____
print(____)
Editar y ejecutar código