Estimasi Waktu Baca: < 1 menit
Deskripsi Fungsi
Fungsi property() digunakan untuk mengembalikan atribut properti dari suatu objek.
Sintaks dan Parameter
Sintaks untuk fungsi property() adalah sebagai berikut:
>>> property(fget=None, fset=None, fdel=None, doc=None)
Fungsi property() menerima empat parameter opsional antara lain:
- fget (opsional) – fungsi untuk mendapatkan nilai atribut. Defaultnya None.
- fset (opsional) – fungsi untuk mengatur nilai atribut. Defaultnya None.
- fdel (opsional) – fungsi untuk menghapus nilai atribut. Defaultnya None.
- doc (opsional) – string berisi dokumentasi (docstring) untuk atribut objek. Defaultnya None.
Fungsi property() nantinya akan mengembalikan atribut properti dari getter, setter, dan deleter yang diberikan.
- Jika tidak ada argumen yang diberikan, fungsi property() akan mengembalikan atribut properti dasar yang tidak berisi getter, setter, atau deleter
- Jika parameter doc tidak disediakan, maka fungsi property() akan mengambil docstring dari fungsi get (fget)
Contoh Penerapan
class Orang:
def __init__(self, nama):
self._name = nama
def dapatkan_nama(self):
print('Dapatkan nama')
return self._name
def atur_nama(self, nilai):
print('Atur nama ke ' + nilai)
self._name = nilai
def hapus_nama(self):
print('Hapus nama')
del self._name
# Mengatur properti menggunakan fungsi dapatkan_nama, atur_nama, dan hapus_nama
nama = property(dapatkan_nama, atur_nama, hapus_nama, 'Properti nama')
orang = Orang('Budi')
print(orang.nama)
orang.nama = 'Kuro'
del orang.nama
Keluaran:
Dapatkan nama
Budi
Atur nama ke Kuro
Hapus nama