4 Kelas Tersembunyi pada Python

Indah Mutia Ayudita . August 31, 2020

Ilustrasi. Foto: Texas State University

Teknologi.id - Python memiliki banyak kelas yang bisa dimanfaatkan. Beberapa diantaranya sering digunakan, namun beberapa kelas lain kurang populer padahal tidak kalah berguna. Kali ini, Teknologi.id ingin mebagikan kelas-kelas di Python yang seringkali terlewat dari pengamatan para developer.

1. Dataclasses

Foto: GitHub

Dataclass dikenalan oleh Python untuk membuat kode secepat mungkin, dengan mengurangi duplikasi kode. Dengan menggunakan dataclass, pendefinisian data jadi lebih mudah, cukup buat daftar variable dalam sebuah dataclass. Salah satu penggunaan dataclass yang paling sering digunakan adalah pembuatan method __init__, inisiasi variable dan hal lain.

Baca juga: 12 Situs Belajar Coding Gratis yang Wajib Kamu Coba

2. Decorators

Foto: Tangkapan layar/csestack.org

Dengan decorator, kamu bisa mengubah cara mengintersepsi dan memodifikasi input dan output suatu objek atau method dengan mempertahankan kode yang asli. Decorator disebut juga method wrappers karena cara kerjanya yang 'membungkus' satu atau lebih method untuk mengurangi pengulangan kode.

3. Typed Variables

Tipe data pada Python. Foto: Geeks for Geeks

Kelas atribut ditulis dengan integer dan string. Meskipun gaya penulisan ini cukup aneh, namun mempermudah untuk membedakan Dataclass dengan atribut atau variabel statis. Jika dituls tanpa tipe variabel, maka secara otomatis variabel tersebut akan menjadi atribut statis. Misalnya, menuliskan variable roda = 4 akan menjadikannya atribut statis. Untuk bisa menggunakan atribut statis ke dalam dataclass bisa dengan menambahkan tipe data dan bisa dituliskan sebagai berikut roda: int = 4.

Baca juga: 5 Bahasa Pemrograman Terpopuler pada Tahun 2020 dari GitHub

4. NamedTuples

Foto: Pranay Gore/Medium

Dataclass menyediakan banyak fitur, namun secara default tidak bisa di-index seperti list atau array. Untuk menambahkan fungsi indexing, bisa dengan mengimplementasikan method getitem dengan menambahkan __getitem__(self, i) dimana i adalah index pada array atau list yang ingin dikembalikan. Namun, NamedTuples bisa mempermudah akses ini hanya dengan sebaris kode, seperti contoh berikut: 

from collections import namedtuple

Coordinate = namedtuple(“Coordinate”, (“x”, “y”))

point = Coordinate(3, 7)


print(point.x)

print(point[0])

Kedua kode tersebut akan memberikan hasil yang sama. Ketika menangani tipe data koordinat yang butuh akses untuk index dan nama. Python memiliki tipe data dictionary yang mirip dengan koordinat dimana ada satu key masing-masing memiliki value.

Meskipun Dictionary bisa digunakan untuk keperluan ini, namun cukup lambat ketika dibutuhkan untuk melakukan pencarian. Tipe data ini juga tidak kompatibel untuk bahasa pemrograman lain seperti C. Dictionary juga rentan terkena bugs ketika memasukkan string key yang salah.

(im)

Share :