Anda di halaman 1dari 9

Pemrograman Berorientasi Objek menggunakan Python

__.:Struktur Data:.__

Pemrograman Berorientasi Objek


menggunakan Python: Struktur Data
Struktur Data Python

Teknik atau cara untuk menyimpan, menyusun, dan mengatur data dalam
penyimpanan agar data dapat digunakan secara efisien. Python menyediakan
beberapa fitur-fitur berorientasi objek terkait struktur data. Dalam hal ini ada
beberapa seperti (1) Tuples dan named tuples, (2) Dictionaries, dan (3) Lists dan
Sets.

Tuples dan named tuples



Tuples adalah objek yang dapat menyimpan sejumlah objek lain yang spesifik
secara urut. Mereka immutable, sehingga kita tidak dapat menambahkan,
menghapus, ataupun mengganti onjek saat program berjalan. Jangan
menggunakan tipe data tuples jika anda akan menyimpan objek yang dapat
dimodifikasi saat berjalan. Keuntungan immutability dari tuples adalah kita dapat
menggunakannya sebagai kunci dalam kamus (dictionaries).
Tuples digunakan untuk menyimpan data; sementara perilaku tidak dapat
disimpan di dalam tuples. Jika kita membutuhkan perilaku untuk memanipulasi
suatu tuple, kita harus melewatkan tuple ke dalam fungsi (atau metode pada
objek lainnya) yang menjalankan aksi.
Kita dapat membuat tuples dengan memisahkan nilai menggunakan koma.
Biasanya, tuples dibungkus dengan kurung buka dan tutup untuk memudahkan
pembacaan dan membedakan dengan bagian-bagian ekspresi lainnya, namun hal
ini tidak wajib. Berikut contoh 2 statemen pembuatan tuples yang menyimpan
nilai yang sama.

>>> stock = “FB”, 75.00, 75.03, 74.90
>>> stock2 = (“FB”, 75.00, 75.03, 74.90)

Jika kita mengelompokkan suatu tuple bersama dengan objek lainnya, seperti
pada pemanggilan fungsi, list comprehension, atau generator, maka dibutuhkan
tanda kurung. Berikut ini adalah contoh fungsi yang menerima tuple dan date,
dan mengembalikan tuple yang berisi date dan nilai tengah.



1
Pemrograman Berorientasi Objek menggunakan Python
__.:Struktur Data:.__

Import datetime
def middle (stock, date):
symbol, current, high, low = stock
return (((high + low) / 2), date)

mid_value, date = middle((“FB”, 75.00, 75.03, 74.90),


datetime.date(2019, 10, 31))

pada contoh di atas baris pertama fungsi membongkar parameter stock ke dalam
empat variabel yang berbeda. Tuple memiliki panjang yang benar-benar sama
dengan jumlah variabel, jika tidak maka akan menemukan exception.

Contoh 1:



Contoh 2:

2
Pemrograman Berorientasi Objek menggunakan Python
__.:Struktur Data:.__
Contoh 3:

Dictionaries

Dictionaries adalah kontainer yang hebat sehingga dapat memungkinkan kita
memetakan objek-objek secara langsung ke objek-objek lainnya. Objek kosong
yang berisi atribut-atribut merupakan suatu dictionary sederhana.
Dictionaries sangat efisien dalam mencari suatu nilai, diberikan suatu kunci yang
memetakan pada suatu nilai. Objek yang sedang disimpan disebut value; objek
yang sedang digunakan sebagai indeks disebut key.
Dictionaries dapat dibaut baik menggunakan konstruktor dict() ataupun
menggunakan sintaks pendek {}. Kita dapat prepopulate suatu dictionary dengan
memisahkan keys dengan values menggunakan tanda titik dua, dan memisahkan
pasangan key dan value menggunakan koma.
Misalkan sebagai contoh, dalam aplikasi stock, kita sering ingin melihat
peningkatan berdasarkan simbol stock. Kita dapat membuat dictionary yang
menggunakan simbol stock sebagai keys, dan tuples berisi current, high, dan low
sebagai values seperti berikut:



disini kita bisa mencari values di dalam dictionary dengan meminta
menggunakan key di dalam kurung persegi. Jika nilainya tidak ada maka akan
mengembalikan exception
>>> stocks[“SOOG”]
(613.3, 625.86, 610.5)
>>> stocks[“RIM”]
Traceback (most recent call last):
...
kita dapat menangkap KeyError dan menanganinya. Perlu diingat bahwa
dictionary adalah suatu objek, sehingga memiliki beberapa perilaku terkait. Salah
satunya yang bermanfaat adalah metode get; metode ini menerima suatu key
sebagai parameter pertamanya dan nilai defualt opsional jika key tidak
ditemukan:

3
Pemrograman Berorientasi Objek menggunakan Python
__.:Struktur Data:.__



ada metode yang cukup bermanfaat milik dictionary yaitu keys(), values(), dan
items(). Dua metode pertama adalah iterator pada seluruh keys dan seluruh nilai
dalam dictionary. Kita dapat menggunakannya seperti lists atau dalam for loops
jika kita ingin memproses seluruh keys atau values. Metode item() kemungkinan
yang paling bermanfaat; ini mengembalikan iterator pada tuples dari pasangan
(key, value) untuk setiap item dalam dictionary. Hal ini cukup bagus dengan
pembongkaran tuple dengan for loop untuk mengalangi keys dan values terkait.
Berikut adalah contoh mencetak stock didalam dictionary

Contoh:

4
Pemrograman Berorientasi Objek menggunakan Python
__.:Struktur Data:.__

List

Di dalam Python, lists digunakan untuk menyimpan beberapa instance dari objek
dengan tipe data yang “sama”. List berisi strings atau list bilangan; list objek yang
kita tentukan sendiri. List juga selalu digunakan ketika kita ingin mengyimpan
items dalam urutan tertentu. Kadang, urutan ini sesuai dengan kedatangannya
namun dapat juga diurutkan berdasar kriteria. Jangan menggunakan lists untuk
menyimpan koleksi atribut indifidu yang berbeda.
Seperti halnya dictionaries, lists adalah objek juga, dan memiliki beberapa
metode yang dapat dipanggil. Berikut beberapa metode yang dimiliki oleh list:
• Metode append(element) menambahkan elemen di akhir list
• Metode insert(index, element) menyisipkan suatu item pada posisi
tertentu
• Metode count(element) menginformasikan berapa jumlah items yang ada
pada list
• Metode index() menginformasikan indeks suatu item di dalam list, akan
memunculkan exception jika tidak dapat menemukannya
• Metode find() melakukan hal yang sama, tapi mengembalikan -1 daripada
memunculkan exception.
• Metode reverse() melakukan sesuai dengan namanya – membalikkan list

5
Pemrograman Berorientasi Objek menggunakan Python
__.:Struktur Data:.__

• Metode sort() agak lebih rumit dari lainnya


Mengurutkan List

Metode khusus bernama __lt__, singkatan dari “less then”, harus didifinisikan di
dalam class untuk membuat instan class yang dapat dibandingkan. Metode akan
mengembalikan True jika kelas ini lebih kecil dari parameter yang dilewatkan,
dan False jika sebaliknya. Berikut ini adalah contoh dari pengurutan berdasar
baik sting maupun bilangan.



metode __repr__ memudahkan untuk melihat dua nilai ketika mencetak list.
Implementasi dari metode __lt__ membandingkan instan lainnya dari class yang
sama. Pertama kita memanggil sort, ini mengurutkan berdasar bilangan karena
nilai dari sort_num adalah True pada seluruh objek yang dibandingkan. Kedua, in
imengurutkan berdasar huruf. Metode __lt__ adalah satu-satunya metode untuk
mengurutkan dalam kasus ini. Class dapat juga mengimplementasikan __gt__,
__eq__, __ne__, __ge__, dan __le__ selain itu juga operator <, >, ==, >=, dan =< juga
dapat bekerja dengan baik.





6
Pemrograman Berorientasi Objek menggunakan Python
__.:Struktur Data:.__
Contoh:

7
Pemrograman Berorientasi Objek menggunakan Python
__.:Struktur Data:.__



Sets

List memiliki kekurangan ketika kita akan memastikan objek yang berada di
dalam list itu unik atau tidak. Disinilah Sets hadir. Kita dapat menambahkan
suatu bilangan sebanyak lima kali di dalam suatu Set, namun hanya akan ada 1 di
dalam Sets.
Contoh:

8
Pemrograman Berorientasi Objek menggunakan Python
__.:Struktur Data:.__
tambahkan kode berikut



Berikut adalah beberapa method yang dapat diterapkan pada sets.



TUGAS:
Ada di laman simbel

Anda mungkin juga menyukai