Properti hanya-baca
Kelas LoggedDF dari Bab 2 adalah ekstensi dari kelas pandas DataFrame yang memiliki atribut tambahan created_at untuk menyimpan stempel waktu saat DataFrame dibuat, sehingga pengguna dapat melihat seberapa usang data tersebut.
Namun kelas itu kurang berguna: kita bisa saja menetapkan nilai apa pun ke created_at setelah DataFrame dibuat, sehingga tujuan atribut tersebut menjadi tidak ada artinya! Sekarang, dengan menggunakan properti, kita dapat membuat atribut tersebut hanya-baca.
Kelas LoggedDF dari Bab 2 tersedia untuk Anda di panel skrip.
Latihan ini adalah bagian dari kursus
Pemrograman Berorientasi Objek di Python
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
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(____)