ComeçarComece gratuitamente

Propriedades somente leitura

A classe LoggedDF do Capítulo 2 era uma extensão da classe pandas DataFrame que tinha um atributo created_at adicional que armazenava o registro de data e hora em que o DataFrame foi criado, para que o usuário pudesse ver se os dados estavam desatualizados.

Mas essa classe não era muito útil: poderíamos simplesmente atribuir qualquer valor a created_at depois que o DataFrame fosse criado, anulando assim todo o objetivo do atributo! Agora, usando propriedades, podemos tornar o atributo somente leitura.

A classe LoggedDF do Capítulo 2 está disponível para você no painel de script.

Este exercício faz parte do curso

Programação orientada a objetos em Python

Ver Curso

Exercício interativo prático

Experimente este exercício preenchendo este código de exemplo.

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 e executar código