PBO Python - 2019
PBO Python - 2019
__.:Struktur Data:.__
1
Pemrograman Berorientasi Objek menggunakan Python
__.:Struktur Data:.__
Import datetime
def middle (stock, date):
symbol, current, high, low = stock
return (((high + low) / 2), date)
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:.__
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