Python

Python getattr() Fungsi

Python getattr() Fungsi

Berbagai macam modul, fungsi, dan pernyataan bawaan Python membantu pemrogram untuk melakukan berbagai tugas. Fungsi getattr() adalah fungsi bawaan Python yang memungkinkan pemrogram mengakses nilai atribut suatu objek. Jika nilainya tidak ditemukan, maka fungsi getattar() mengembalikan nilai default. Inilah alasan mengapa fungsi getattr() sebagian besar digunakan untuk mengakses nilai atribut objek. Artikel ini akan memberikan penjelasan rinci tentang fungsi getattr() dengan beberapa contoh.

Sintaksis

Sebelum beralih ke implementasi fungsi getattr(), pertama-tama kita akan membahas sintaksnya. Sintaks fungsi getattr() adalah sebagai berikut:

getattr(nama_objek,nama_atribut, nilai_defalut)

Fungsi getattr() mengambil tiga parameter sebagai argumen:
nama_objek: Nama objek yang atributnya perlu kita akses.
atribut_nama: Nama atribut yang perlu kita akses.
default_nilai: Nilai default yang dikembalikan ketika atribut tidak ditemukan.

Jika atribut name tidak ditemukan dan kita tidak mendefinisikan default_value, fungsi getattar() memunculkan pengecualian AttributeError.

Contoh

Sekarang, kita akan melihat beberapa contoh menggunakan fungsi getattr(). Kami telah membuat kelas siswa dan mendefinisikan beberapa atribut untuk kelas ini. Kami mengakses atribut ini menggunakan fungsi getattar().

#membuat kelas siswa
siswa kelas:
#menentukan atribut nama
nama = "Yohanes"
#mendefinisikan atribut email
email="[dilindungi email]"
#Membuat objek kelas siswa
std_obj = Siswa()
#sekarang std_obj adalah objek kami
#mengakses atribut nama
print("Nilai atribut nama adalah: ",getattr(std_obj,'nama'))
#mengakses atribut email
print("Nilai atribut email adalah: ",getattr(std_obj,'email'))

Keluaran

Fungsi getattr() berhasil mengembalikan nilai atribut.

Sekarang, kami akan mencoba mengakses atribut yang tidak ditentukan. Kami akan menentukan nilai default untuk atribut yang hilang ini.

#membuat kelas siswa
siswa kelas:
#menentukan atribut nama
nama = "Yohanes"
#mendefinisikan atribut email
email="[dilindungi email]"
#Membuat objek kelas siswa
std_obj = Siswa()
#sekarang std_obj adalah objek kami
#mengakses atribut usia
print("Usianya adalah: ",getattr(std_obj,'umur','Diatas 20'))

Nilai yang ditentukan adalah “Di atas 20”.

Keluaran

Dalam kasus atribut 'usia' yang hilang, nilai yang ditentukan akan dicetak.

Jika nilainya tidak ditentukan, fungsi getattr() akan memunculkan pengecualian 'AttributeError'. Mari kita lihat contohnya.

#membuat kelas siswa
siswa kelas:
#menentukan atribut nama
nama = "Yohanes"
#mendefinisikan atribut email
email="[dilindungi email]"
#Membuat objek kelas siswa
std_obj = Siswa()
#sekarang std_obj adalah objek kami
#mengakses atribut usia
print("Usianya adalah: ",getattr(std_obj,'umur'))

Keluaran

Anda juga dapat menggunakan fungsi getattr() dengan namedtuple untuk mengakses nilai. Nametuple adalah wadah tipe kamus, tetapi Anda dapat mengakses nilainya menggunakan fungsi getattar(). Nametuple adalah kelas modul koleksi. Mari kita mengimplementasikan sebuah Namedtuple dan mengakses nilainya menggunakan fungsi getattr(). Kami membuat tuple bernama untuk siswa.

#mengimpor modul koleksi
koleksi impor
#membuat tuple bernama untuk siswa
#nama dan umur adalah kuncinya
Siswa = koleksi.bernamatuple('Mahasiswa',['nama','umur'])
#membuat guru baru dan menambah nilai
std = Mahasiswa("John",21)
print("Namanya :" ,getattr(std,"nama"))
print("Usianya adalah: ",getattr(std,"umur"))

Keluaran

Kesimpulan

Fungsi getattar() adalah fungsi bawaan dalam Python yang mengembalikan nilai atribut objek. Alasan utama untuk menggunakan fungsi getattr() adalah memudahkan untuk mengakses nilai atribut menggunakan nama atribut. Nama atribut didefinisikan sebagai string, dan kami mendapatkan nilainya menggunakan fungsi getattar(). Nilai juga dapat ditentukan untuk atribut yang hilang. Setelah membaca artikel ini, semoga Anda belajar lebih banyak tentang cara menggunakan fungsi getattar() Python.

5 Kartu Tangkap Game Teratas
Kita semua telah melihat dan menyukai gameplay streaming di YouTube. PewDiePie, Jakesepticye, dan Markiplier hanyalah beberapa pemain top yang telah m...
Cara Mengembangkan Game di Linux
Satu dekade yang lalu, tidak banyak pengguna Linux yang memprediksi bahwa sistem operasi favorit mereka suatu hari nanti akan menjadi platform game po...
Port Sumber Terbuka dari Mesin Game Komersial
Rekreasi mesin game gratis, open source, dan lintas platform dapat digunakan untuk bermain lama serta beberapa judul game yang cukup baru. Artikel ini...