Anda di halaman 1dari 35

Materi Struktur Data

(Pyhton)

OLEH :

NAMA : Lakadandio Karella Mattayya

KELAS : O

NIM : 192531

STIMIK DIPANEGARA MAKASSAR

1
TAHUN 2020

Daftar isi

Daftar isi......................................................................................................................................................1
BAB 1...........................................................................................................................................................2
1.1 Sejarah Phyton...................................................................................................................................3
1.2 Pengertian Phtyon.............................................................................................................................3
1.3 Fitur Pada Pyhton..............................................................................................................................4
1.4 Fungsi Pyhton....................................................................................................................................4
1.5 Kelebihan dan Kekurangan Pyhton....................................................................................................5
BAB 2...........................................................................................................................................................6
2.1 Komentar Pyhton...............................................................................................................................6
2.3 Variable Python.................................................................................................................................6
2.4 Operator Pyhton................................................................................................................................7
2.5 Tipe Data Python...............................................................................................................................7
2.6 Struktur Perulangan Python..............................................................................................................7
2.6.1 For...............................................................................................................................................7
2.6.2 While..........................................................................................................................................8
2.7 Array Pyhton......................................................................................................................................9
2..8 List dan Tuple Pyhton.....................................................................................................................11
2.8.1 List

...........................................................................................................................................................11
Akses Nilai Dalam List Python........................................................................................................11
Update Nilai Dalam List Python.....................................................................................................12
Hapus Nilai Dalam List Python......................................................................................................12
Operasi Dasar Pada List Python.....................................................................................................12
Indexing, Slicing dan Matrix Pada List Python.............................................................................13
2.8.2 Tuple.........................................................................................................................................15

2
2.9 Dictionary Python............................................................................................................................19
2.10 Stack Python..................................................................................................................................19
2.11 Queue Python................................................................................................................................21
2.12 String Pyhton.................................................................................................................................23
Mengakses Nilai dalam String.......................................................................................................23
Mengupdate String.........................................................................................................................24
2.13 Object & Class Python....................................................................................................................24
Istilah Dalam OOP...........................................................................................................................24
Membuat Class Python...................................................................................................................26
Membuat Instance Objects............................................................................................................26
Mengakses Atribut..........................................................................................................................26
Latihan 1................................................................................................................................................27
Latihan 2................................................................................................................................................28
Latihan 3....................................................................................................................................................29
Latihan 4................................................................................................................................................31
Latihan 5................................................................................................................................................32
Latihan 6................................................................................................................................................33
Latihan 7................................................................................................................................................34
Latihan 8................................................................................................................................................35
Latihan 9................................................................................................................................................36
Daftar Pustaka...........................................................................................................................................37

3
BAB 1
1.1 Sejarah Phyton
Python dikembangkan oleh Guido van Rossum pada tahun 1990 di Stichting Mathematisch
Centrum (CWI), Amsterdam sebagai kelanjutan dari bahasa pemrograman ABC. Versi terakhir yang
dikeluarkan CWI adalah 1.2.

Tahun 1995, Guido pindah ke CNRI di Virginia Amerika sambil terus melanjutkan pengembangan
Python. Versi terakhir yang dikeluarkan adalah 1.6. Tahun 2000, Guido dan para pengembang inti
Python pindah ke BeOpen.com yang merupakan sebuah perusahaan komersial dan membentuk BeOpen
PythonLabs. Python 2.0 dikeluarkan oleh BeOpen. Setelah mengeluarkan Python 2.0, Guido dan
beberapa anggota tim PythonLabs pindah ke DigitalCreations.

Saat ini pengembangan Python terus dilakukan oleh sekumpulan pemrogram yang dikoordinasi
Guido dan Python Software Foundation. Python Software Foundation adalah sebuah organisasi non-
profit yang dibentuk sebagai pemegang hak cipta intelektual Python sejak versi 2.1 dan dengan demikian
mencegah Python dimiliki oleh perusahaan komersial. Saat ini distribusi Python sudah mencapai versi
2.7.14 dan versi 3.6.3

Nama Python dipilih oleh Guido sebagai nama bahasa ciptaannya karena kecintaan Guido pada
acara televisi Monty Python's Flying Circus. Oleh karena itu sering kali ungkapan-ungkapan khas dari
acara tersebut sering kali muncul dalam korespondensi antar pengguna Python.

1.2 Pengertian Phtyon


Python adalah bahasa pemrograman interpretatif multiguna[9] dengan filosofi perancangan
yang berfokus pada tingkat keterbacaan kode.[10] Python diklaim sebagai bahasa yang menggabungkan
kapabilitas, kemampuan, dengan sintaksis kode yang sangat jelas,[11] dan dilengkapi dengan
fungsionalitas pustaka standar yang besar serta komprehensif. Python juga didukung oleh komunitas
yang besar.

Python mendukung multi paradigma pemrograman, utamanya; namun tidak dibatasi; pada
pemrograman berorientasi objek, pemrograman imperatif, dan pemrograman fungsional. Salah satu
fitur yang tersedia pada python adalah sebagai bahasa pemrograman dinamis yang dilengkapi dengan
manajemen memori otomatis. Seperti halnya pada bahasa pemrograman dinamis lainnya, python
umumnya digunakan sebagai bahasa skrip meski pada praktiknya penggunaan bahasa ini lebih luas
mencakup konteks pemanfaatan yang umumnya tidak dilakukan dengan menggunakan bahasa skrip.
Python dapat digunakan untuk berbagai keperluan pengembangan perangkat lunak dan dapat berjalan
di berbagai platform sistem operasi.

4
Saat ini kode python dapat dijalankan di berbagai platform sistem operasi, beberapa di antaranya
adalah:

1. Linux/Unix
2. Windows
3. Mac OS X
4. Java Virtual Machine
5. OS/2
6. Amiga
7. Palm
8. Symbian (untuk produk-produk Nokia)

Python didistribusikan dengan beberapa lisensi yang berbeda dari beberapa versi. Lihat sejarahnya
di Python Copyright. Namun pada prinsipnya Python dapat diperoleh dan dipergunakan secara bebas,
bahkan untuk kepentingan komersial. Lisensi Python tidak bertentangan baik menurut definisi Open
Source maupun General Public License (GPL).

1.3 Fitur Pada Pyhton


Beberapa fitur yang dimiliki Python adalah:

 memiliki kepustakaan yang luas; dalam distribusi Python telah disediakan modul-modul 'siap
pakai' untuk berbagai keperluan.
 memiliki tata bahasa yang jernih dan mudah dipelajari.
 memiliki aturan layout kode sumber yang memudahkan pengecekan, pembacaan kembali dan
penulisan ulang kode sumber.
 berorientasi objek.
 memiliki sistem pengelolaan memori otomatis (garbage collection, seperti java)
 modular, mudah dikembangkan dengan menciptakan modul-modul baru; modul-modul tersebut
dapat dibangun dengan bahasa Python maupun C/C++.
 memiliki fasilitas pengumpulan sampah otomatis, seperti halnya pada bahasa pemrograman
Java, python memiliki fasilitas pengaturan penggunaan ingatan komputer sehingga para
pemrogram tidak perlu melakukan pengaturan ingatan komputer secara langsung.
 memiliki banyak faslitas pendukung sehingga mudah dalam pengoperasiannya.

5
1.4 Fungsi Pyhton
Kalian bisa menentukan fungsi untuk menyediakan fungsionalitas yang dibutuhkan. Berikut ini
merupakan aturan sederhana untuk mendefinisikan fungsi dengan Python.

 Fungsi blok dimulai dengan def kata kunci diserta dengan nama fungsi dan tanda kurung (()).
 Setiap parameter masukan atau argumen dan ditempatkan di dalam tanda kurung ini. Kalian
juga tentunya bisa menentukan parameter di dalam tanda kurung ini.
 Pernyataan pertama dari sebuah fungsi bisa berupa pernyataan opsional – string dokumentasi
fungsi atau docstring.
 Blok kode di dalam setiap fungsi dimulai dengan titik dua (:) dan indentasi.
 Pernyataan kembali keluar dari sebuah fungsi, secara opsional menyampaikan kembali ekspresi
ke pemanggil. Pernyataan pengembalian tanpa argumen sama dengan return None.

1.5 Kelebihan dan Kekurangan Pyhton


Kelebihan :

 Python bisa dengan mudah dipelajari bahkan untuk pengembang pemula. Kodenya mudah
dibaca dan bisa menjalankan banyak fungsi kompleks dengan mudah, karena banyaknya
standard library.
 Pengembangan program bisa dilakukan dengan cepat dan juga menggunakankode yang lebih
sedikit. Bahkan tim kecil bisa menangani bahasa Python secara efektif.
 Bersifat Object Oriented Programming.
 Mendukung Multi Platform & Multi System
 Memungkinkan membuat program dengan skala yang paling rumit dengan mudah.
 Sejumlah besar library atau pustaka tersedia untuk Python.
 Konstruksi ketika aplikasi berjalan
 Mempunyai sistem pengelolaan memory yang otomatis, garbage collection, layaknya Java

Kekurangan :

 Terlalu Lambat
 Python terbilang buruk dalam pengembangan platform mobile (Android/IOS)
 Python bukanlah menjadi pilihan yang baik untuk tugas-tugas intensif memori.
 Hampir mustahil untuk membuat game 3 dimensi grafis tinggi menggunakan Python.
 Mempunyai keterbatasan dengan akses basis data.
 Python tidak baik jika diperuntukan dalam pekerjaan multi-prosesor / multi-core.

6
BAB 2
2.1 Komentar Pyhton
Komentar (comment) adalah kode di dalam script Python yang tidak dieksekusi atau tidak
dijalankan mesin. Komentar hanya digunakan untuk menandai ataumemberikan keterangan tertulis
pada script.

Komentar biasa digunakan untuk membiarkan orang lain memahami apa yang dilakukan script.
atau untuk mengingatkan kepada programmer sendiri jika suatu saat kembali mengedit scripttersebut.

Untuk menggunakan komentar anda cukup menulis tanda pagar #, diikuti dengan komentar
Anda.

2.3 Variable Python


Variabel adalah lokasi memori yang dicadangkan untuk menyimpan nilai-nilai. Ini berarti bahwa
ketika Anda membuat sebuah variabel Anda memesan beberapa ruang di memori. Variabel menyimpan
data yang dilakukan selama program dieksekusi, yang natinya isi dari variabel tersebut dapat diubah
oleh operasi - operasi tertentu pada program yang menggunakan variabel.

Variabel dapat menyimpan berbagai macam tipe data. Di dalam pemrograman Python, variabel
mempunyai sifat yang dinamis, artinya variabel Python tidak perlu didekralasikan tipe data tertentu dan
variabel Python dapat diubah saat program dijalankan.

Penulisan variabel Python sendiri juga memiliki aturan tertentu, yaitu :

1. Karakter pertama harus berupa huruf atau garis bawah/underscore _


2. Karakter selanjutnya dapat berupa huruf, garis bawah/underscore _ atau angka
3. Karakter pada nama variabel bersifat sensitif (case-sensitif). Artinya huruf kecil dan huruf besar
dibedakan. Sebagai contoh, variabel namaDepan dan namadepan adalah variabel yang berbeda.

Untuk mulai membuat variabel di Python caranya sangat mudah, Anda cukup menuliskan variabel
lalu mengisinya dengan suatu nilai dengan cara menambahkan tanda sama dengan = diikuti dengan nilai
yang ingin dimasukan.

7
2.4 Operator Pyhton
Operator adalah konstruksi yang dapan memanipulasi nilai dari operan.

Sebagai contoh operasi 3 + 2 = 5. Disini 3 dan 2 adalah operan dan + adalah operator.

Bahasa pemrograman Python mendukung berbagai macam operator, diantaranya :

o Operator Aritmatika (Arithmetic Operators)


o Operator Perbandingan (Comparison (Relational) Operators)
o Operator Penugasan (Assignment Operators)
o Operator Logika (Logical Operators)
o Operator Bitwise (Bitwise Operators)
o Operator Keanggotaan (Membership Operators)
o Operator Identisas (Identity Operators)

2.5 Tipe Data Python


Pyhton adalah salah satu bahasa pemrograman yang bertipe Loosely Typed Language, Artinya
tidak membutuhkan atau menyertakan tipe data sewaktu Anda membuat sebuah variable. Tipe data
pada bahasa pemrograman Python mirip dengan tipe data pada bahasa pemrograman

Tetapi secara dasar, Python memiliki beberapa tipe data, yaitu:

1. Tipe Data String


2. Tipe Data Number
3. Tipe Data Boolean
4. Tipe Data Tuples
5. Tipe Data List
6. Tipe Data Dictionary

2.6 Struktur Perulangan Python


2.6.1 For
Perulangan for pada bahasa python sedikit berbeda dengan bahasa lain. perulangan ini
dirancang untuk menelusuri nilai/elemen yang biasanya terdapat pada string, list, tuple dictionary dan
objek yang mempunyai tipe range.

Bentuk Umum Tipe Koleksi:

for elemen in tipe_koleksi:

perintah1

8
perintah2

Dari bentuk diatas dapat dilihat bahwa perintah1 dan perintah2 akan dilakukan perulangan lewat
elemen yang terdapat didalam tipe_koleksi. Seperti yang saya sebutkan diatas tipe koleksi bisa
berupa  string, list,dictionary  dan lainnya. lebih jelasnya coba perhatikan contoh program dibawah ini:

for kata in 'Hello':


print(kata)

Perhatikan pada program diatas saya membuat variabel kata dimana iterasi akan dilakukan.
Pada iterasi ke-1 variabel kata akan diisi dengan huruf pertama pada string ‘Hello’ huruf pertamanya
yaitu H. Pada iterasi ke-2 nilai yang ditampung adalah e begitu seterusnya iterasi akan berjalan hingga
semua karakter dalam string tersebut terambil.

2.6.2 While
Struktur perulangan (atau dalam bahasa inggris disebut dengan loop) adalah instruksi kode
program yang bertujuan untuk mengulang beberapa baris perintah.

Dalam merancang perulangan, kita setidaknya harus mengetahui 3 komponen:

1. Kondisi awal perulangan.
2. Kondisi pada saat perulangan.
3. Kondisi yang harus dipenuhi agar perulangan berhenti.

Berikut format dasar struktur perulangan while dalam bahasa Python:

start;
while condition:
  # kode program yang akan diulang
  # kode program yang akan diulang
  increment
Di bagian start biasanya berupa perintah inisialisasi variabel counter, misalnya i = 0. Di
bagian condition terdapat kondisi yang harus dipenuhi agar perulangan berjalan, misalnya i < 5.
Kemudian perintah increment di dalam block perulangan yang di pakai untuk menaikkan nilai variabel
counter, misalnya dengan perintah i = i +1.

Contoh Kode Program Perulangan While Bahasa Python

i = 1
while i <= 5:
  print('Duniailkom')
  i += 1
Di baris 1 terdapat perintah untuk menginput angka 1 ke dalam variabel i. Nantinya, variabel i ini
akan menjadi variabel counter yang dipakai untuk menentukan jumlah perulangan.

Proses perulangan di mulai di baris 2. Perintah while i <= 5 artinya, selama nilai variabel i kurang
atau sama dengan 5, maka jalankan perulangan.

9
Di dalam blok perulangan terdapat perintah print(‘Duniailkom’) di baris 3. Ini dipakai untuk
menampilkan teks “Duniailkom“. Kemudian di baris 4 terdapat perintah increment, yakni i += 1. Perintah
merupakan penulisan singkat dari i = i + 1, yang berfungsi untuk menaikkan nilai variabel i sebanyak 1
angka dalam setiap perulangan.

Perulangan while di atas akan di ulang sebanyak 5 kali, mulai dari i = 1, i = 2, i = 3, i = 4, hingga i =
5. Ketika nilai variabel counter i sudah mencapai 6, maka kondisi while i <= 5 tidak terpenuhi lagi (False),
sehingga perulangan berhenti.

2.7 Array Pyhton


Array adalah sekumpulan variabel yang memiliki tipe data yang sama dan dinyatakan dengan
nama yang sama. Array merupakan konsep yang penting dalam pemrogaman karena array
memungkinkan untuk menyimpan data maupun referensi objek dalam jumlah banyak dan terindeks.

Pada python, array dikenal dengan list, untuk menggunakannya cukup menggunakan tanda
kurung siku[ ] pada variabel yang diinginkan, misalnya a=[] berarti variable a memiliki list kosong,
kemudian untuk menambahkan data ada list, kita harus menggunakan perintah append, sehingga dapat
memasukkan data pada list.

Untuk mengakses elemen dalam array, kita bisa menggunakan angka indeks dari nilai yang
ingin di akses. Setiap anggota dari sebuah array, memliki indeks yang menunjukan posisi anggota
tersebut dalam array.

contoh : Nama_Variabel = [ Nomor Urut ]

o Array Satu Dimensi


Array satu dimensi merupakan sebuah variabel yang menyimpan sekumpulan data yang
memiliki tipe sama dan elemen yang akan diakses melalui satu index atau subskrip.
Contoh: nama_array[jumlah_elemen];
o Array Dua Dimensi
Array dua dimensi merupakan sebuah variabel yang menyimpan sekumpulan data yang
memiliki tipe sama dan elemen yang akan diakses memalui dua indeks atau sub skrip
yaitu index baris dan index kolom
Contoh: nama_array[jumlah_elemen_baris]
[jumlah_elemen_kolom]

10
Langkah-langkahnya

Var [x][y][z] = x

Var [1][1][1] = 1

Var [1][1][2] = 2

Var [1][1][3] = 3

Var [1][2][1] = 4

Var [1][3][1] = 5

o index : kembalikan indeks item pertama dalam array yang mana nilainya “x”.
Contoh : array.index(x)
o Append : menambahkan sebuah item baru pada akhir array.
Contoh : array.append(x)
o Insert : memasukkan item baru ke dalam “x” sebelum “i”.
Contoh : array.insert(i,x)
o Remove : menghapus item bernilai “x” dalam array.
Contoh : array.remove(x)
o Pop :menghapus item dalam posisi tertentudalam indeks kemudian
mengembalikannya.
Contoh ; array.pop([i])
o Count : kembalikan pada jumlah item “x” di dalam array.
Contoh : array.count(x)
o Reverse : membalikan urutan item dalam array sehingga indeks dari setiap item berubah
secara terbalik.
Contoh : array.reverse()
o Extend : menambahkan item tertentu dalam akhir array.
Contoh : array.extend(‘iterable’)
o Sort : mengurutkan item dalam array.
Contoh : array.sort()
o Len : mengembalikan nilai berupa jumlah item di dalam sebuah array.
Contoh : len()
o Del : menghapus item dalam array
Contoh : del L[i]

o ilter : menyaring sekumpulan data yang memenuhi kondisi yang di berikan.


Contoh : filter(fungsi,urutan)

11
o Map : menyaring fungsi, tapi bukan nilai akhir, melainkan nilai domain, fungsi map
menyaring nilai-nilai yang belum dimasukkan, namun hasilnya adalah hasil dari
fungsi yang disyaratkan tersebut.
Contoh : map(fungsi, urutan)
o Reduce : kembalikan pada nilai tertentu yang dikonstruksikan oleh pemanggilan fungsi,
di dua objek pertama urutan, kemudian masuk ke hasil dan ke nilai
selanjutnya.
Contoh : reduce(fungsi, urutan)

2..8 List dan Tuple Pyhton


2.8.1 List

Dalam bahasa pemrograman Python, struktur data yang paling dasar adalah urutan atau lists.
Setiap elemen-elemen berurutan akan diberi nomor posisi atau indeksnya. Indeks pertama dalam list
adalah nol, indeks kedua adalah satu dan seterusnya.

Python memiliki enam jenis urutan built-in, namun yang paling umum adalah list dan tuple. Ada
beberapa hal yang dapat Anda lakukan dengan semua jenis list. Operasi ini meliputi pengindeksan,
pengiris, penambahan, perbanyak, dan pengecekan keanggotaan. Selain itu, Python memiliki fungsi
built-in untuk menemukan panjang list dan untuk menemukan elemen terbesar dan terkecilnya.

Membuat List Python

List adalah tipe data yang paling serbaguna yang tersedia dalam bahasa Python, yang dapat
ditulis sebagai daftar nilai yang dipisahkan koma (item) antara tanda kurung siku. Hal penting tentang
daftar adalah item dalam list tidak boleh sama jenisnya.

Membuat list sangat sederhana, tinggal memasukkan berbagai nilai yang dipisahkan koma di
antara tanda kurung siku. Dibawah ini adalah contoh sederhana pembuatan list dalam bahasa Python.

#Contoh sederhana pembuatan list pada bahasa pemrograman python


list1 = ['kimia', 'fisika', 1993, 2017]
list2 = [1, 2, 3, 4, 5 ]
list3 = ["a", "b", "c", "d"]

Akses Nilai Dalam List Python


Untuk mengakses nilai dalam list python, gunakan tanda kurung siku untuk mengiris beserta
indeks atau indeks untuk mendapatkan nilai yang tersedia pada indeks tersebut.

Berikut adalah contoh cara mengakses nilai di dalam list python :

#Cara mengakses nilai di dalam list Python

list1 = ['fisika', 'kimia', 1993, 2017]

12
list2 = [1, 2, 3, 4, 5, 6, 7 ]

print ("list1[0]: ", list1[0])


print ("list2[1:5]: ", list2[1:5])

Setelah Anda mengeksekusi kode diatas, hasilnya akan seperti dibawah ini :

list1[0]: fisika   list2[1:5]: [2, 3, 4, 5]

Update Nilai Dalam List Python


Anda dapat memperbarui satu atau beberapa nilai di dalam list dengan memberikan potongan
di sisi kiri operator penugasan, dan Anda dapat menambahkan nilai ke dalam list dengan metode
append (). Sebagai contoh :

list = ['fisika', 'kimia', 1993, 2017]


print ("Nilai ada pada index 2 : ", list[2])

list[2] = 2001
print ("Nilai baru ada pada index 2 : ", list[2])

Hapus Nilai Dalam List Python


Untuk menghapus nilai di dalam list python, Anda dapat menggunakan salah satu pernyataan
del jika Anda tahu persis elemen yang Anda hapus. Anda dapat menggunakan metode remove() jika
Anda tidak tahu persis item mana yang akan dihapus. Sebagai contoh :

#Contoh cara menghapus nilai pada list python

list = ['fisika', 'kimia', 1993, 2017]

print (list)
del list[2]
print ("Setelah dihapus nilai pada index 2 : ", list)

Operasi Dasar Pada List Python


List Python merespons operator + dan * seperti string; Itu artinya penggabungan dan
pengulangan di sini juga berlaku, kecuali hasilnya adalah list baru, bukan sebuah String.

Sebenarnya, list merespons semua operasi urutan umum yang kami gunakan pada String di bab
sebelumnya. Dibawah ini adalah tabel daftar operasi dasar pada list python.

13
Python Expression Hasil Penjelasan

len([1, 2, 3, 4]) 4 Length

[1, 2, 3] + [4, 5, 6] [1, 2, 3, 4, 5, 6] Concatenation

['Halo!', 'Halo!', 'Halo!',


['Halo!'] * 4 Repetition
'Halo!']

2 in [1, 2, 3] True Membership

for x in [1,2,3] : print (x,end =


1 2 3 Iteration
' ')

Indexing, Slicing dan Matrix Pada List Python


Karena list adalah urutan, pengindeksan dan pengiris bekerja dengan cara yang sama untuk list
seperti yang mereka lakukan untuk String.

Dengan asumsi input berikut :

L = ['C++'', 'Java', 'Python']

Python Expression Hasil Penjelasan

L[2] 'Python' Offset mulai dari nol

L[-2] 'Java' Negatif: hitung dari kanan

[1:] ['Java', 'Python'] Slicing mengambil bagian

Method dan Fungsi Build-in Pada List Python

14
Python menyertakan fungsi built-in sebagai berikut :

Python Function Penjelasan

cmp(list1, list2) # Tidak lagi tersedia dengan Python 3

len(list) Memberikan total panjang list.

max(list) Mengembalikan item dari list dengan nilai maks.

min(list) Mengembalikan item dari list dengan nilai min.

list(seq) Mengubah tuple menjadi list.

Python menyertakan methods built-in sebagai berikut

Python Methods Penjelasan

list.append(obj) Menambahkan objek obj ke list

list.count(obj) Jumlah pengembalian berapa kali obj terjadi dalam list

list.extend(seq) Tambahkan isi seq ke list

list.index(obj) Mengembalikan indeks terendah dalam list yang muncul obj

list.insert(index, obj) Sisipkan objek obj ke dalam list di indeks offset

list.pop(obj = list[-1]) Menghapus dan mengembalikan objek atau obj terakhir dari list

list.remove(obj) Removes object obj from list

list.reverse() Membalik list objek di tempat

15
Python Methods Penjelasan

list.sort([func]) Urutkan objek list, gunakan compare func jika diberikan

2.8.2 Tuple
Sebuah tupel adalah urutan objek Python yang tidak berubah. Tupel adalah urutan, seperti
daftar. Perbedaan utama antara tupel dan daftarnya adalah bahwa tupel tidak dapat diubah tidak
seperti List Python. Tupel menggunakan tanda kurung, sedangkan List Python menggunakan tanda
kurung siku.

Membuat tuple semudah memasukkan nilai-nilai yang dipisahkan koma. Secara opsional, Anda
dapat memasukkan nilai-nilai yang dipisahkan koma ini di antara tanda kurung juga. Sebagai contoh :

#Contoh sederhana pembuatan tuple pada bahasa pemrograman python

tup1 = ('fisika', 'kimia', 1993, 2017)


tup2 = (1, 2, 3, 4, 5 )
tup3 = "a", "b", "c", "d"

Tupel kosong ditulis sebagai dua tanda kurung yang tidak berisi apa-apa, contohnya : tup1 = ();
Untuk menulis tupel yang berisi satu nilai, Anda harus memasukkan koma, meskipun hanya ada satu
nilai, contohnya : tup1 = (50,) Seperti indeks String, indeks tuple mulai dari 0, dan mereka dapat diiris,
digabungkan, dan seterusnya

Akses Nilai Dalam Tuple Python

Untuk mengakses nilai dalam tupel, gunakan tanda kurung siku untuk mengiris beserta indeks
atau indeks untuk mendapatkan nilai yang tersedia pada indeks tersebut. Sebagai contoh :

#Cara mengakses nilai tuple

tup1 = ('fisika', 'kimia', 1993, 2017)


tup2 = (1, 2, 3, 4, 5, 6, 7 )

print ("tup1[0]: ", tup1[0])


print ("tup2[1:5]: ", tup2[1:5])

Setelah Anda mengeksekusi kode diatas, hasilnya akan seperti dibawah ini :

tup1[0]: fisika   tup2[1:5]: (2, 3, 4, 5)

Update Nilai Dalam Tuple Python

16
Tuple tidak berubah, yang berarti Anda tidak dapat memperbarui atau mengubah nilai elemen
tupel. Anda dapat mengambil bagian dari tupel yang ada untuk membuat tupel baru seperti ditunjukkan
oleh contoh berikut.

tup1 = (12, 34.56)


tup2 = ('abc', 'xyz')

# Aksi seperti dibawah ini tidak bisa dilakukan pada tuple python
# Karena memang nilai pada tuple python tidak bisa diubah
# tup1[0] = 100;

# Jadi, buatlah tuple baru sebagai berikut


tup3 = tup1 + tup2
print (tup3)

Hapus Nilai Dalam Tuple Python

Menghapus elemen tuple individual tidak mungkin dilakukan. Tentu saja, tidak ada yang salah
dengan menggabungkan tupel lain dengan unsur-unsur yang tidak diinginkan dibuang.

Untuk secara eksplisit menghapus keseluruhan tuple, cukup gunakan del statement. Sebagai contoh

tup = ('fisika', 'kimia', 1993, 2017);

print (tup)
del tup;
print "Setelah menghapus tuple : "
print tup

Operasi Dasar Pada Tuple Python

Tupel merespons operator + dan * sama seperti String; Mereka berarti penggabungan dan pengulangan
di sini juga berlaku, kecuali hasilnya adalah tupel baru, bukan string.

17
Sebenarnya, Tuple merespons semua operasi urutan umum yang kami gunakan pada String di bab
sebelumnya. Dibawah ini adalah tabel daftar operasi dasar pada Tuple python

Python Expression Hasil Penjelasan

len((1, 2, 3)) 3 Length

(1, 2, 3) + (4, 5, 6) (1, 2, 3, 4, 5, 6) Concatenation

(‘Halo!’,) * 4 (‘Halo!’, ‘Halo!’, ‘Halo!’, ‘Halo!’) Repetition

3 in (1, 2, 3) True Membership

for x in (1,2,3) : print (x, end = ‘ ‘) 123 Iteration

Indexing, Slicing dan Matrix Pada Tuple Python

Karena tupel adalah urutan, pengindeksan dan pengiris bekerja dengan cara yang sama untuk
tupel seperti pada String, dengan asumsi masukan berikut

Dengan asumsi input berikut :  T = ('C++', 'Java', 'Python')

18
Python Expression Hasil Penjelasan

T[2] 'Python' Offset mulai dari nol

T[-2] 'Java' Negatif: hitung dari kanan

T[1:] ('Java', 'Python') Slicing mengambil bagian

Fungsi Build-in Pada Tuple Python

Python menyertakan fungsi built-in sebagai berikut

Python Function Penjelasan

cmp(tuple1, tuple2) # Tidak lagi tersedia dengan Python 3

len(tuple) Memberikan total panjang tuple.

max(tuple) Mengembalikan item dari tuple dengan nilai maks.

min(tuple) Mengembalikan item dari tuple dengan nilai min.

tuple(seq) Mengubah tuple menjadi tuple.

2.9 Dictionary Python


Sama halnya Array dibahasa pemrograman lainnya, Dictionary adalah Array dengan index yang
ditentukan. misal di PHP

$data = array("nama"=>"ganjar","umur"=>"30","gender"=>"perempuan");
print_r($data);

di Python kita bisa tuliskan seperti ini. mengakses datanya mirip seperti Lists, bisa jg
menggunakan Looping

19
data = {"nama":"ganjar","umur":30,"gender":"perempuan"}
print data
print data['nama']
print data['umur']

#via loop
for key in data:
print key,"==>", data[key]

Jadi jika data yang akan kita suguhkan atau proses adalah data sequence dengan key/index nya
kita tentukan, maka gunakan Dictionary

2.10 Stack Python


Stack adalah kumpulan data yang terurut sesuai bagaimana data tersebut ditambahkan atau
dihapus. Proses pada stack terjadi pada satu ujung. Ujung ini disebut 'top'. Sisi yang berlawanan dengan
ujung ini disebut 'base'. Stack dalam pengurutan data menggunakan metode LIFO (Last in, First in).
Contoh implementasi dari stack adalah memeriksa keseimbangan tanda kurung, konversi bilangan
desimal ke biner, konversi infix ke postfix/prefix dan lain sebagainya

Contoh Program :

class Stack:
def __init__(self):
self.items=[]

def isEmpty(self):
return self.items == []
def open(self):
return self.items
def push(self,item):
return self.items.append(item)
def pop(self):

20
return self.items.pop()
def peek(self):
return self.items[len(self.items)-1]
def size(self):
return len(self.items)

s = Stack()

stak=[]
soal =''
pasangan = [['siang','malam'],['terang','gelap'],['malam','siang'],['gelap','terang'],['terbit','tenggelam'],
['tenggelam','terbit']]
masukan = int(input('Masukan berapa banyak kata yang ingin diinput = '))
for i in range(masukan):
b = input('Masukan kata ke %i = '%(i+1))
s.push(b)
stak.append(b)
for i in range(len(stak)):
soal=soal + stak[i] + ' '
#print(s.open())
hasil = 0
pembanding = False
hasil1 = False
while not s.isEmpty():
a = Stack()
if len(s.open()) == 1:
hasil1=False
cek = s.pop()
for i in range(len(pasangan)):
pas = pasangan[i][0]
if cek == pas:
ketemu = False
if s.size() <= 0:
ketemu = True
else:
ketemu = False
while not ketemu:
ka = s.open()
jum = len(ka)-1
while jum >= 0:
cek1 = ka[jum]
if pasangan[i][1] == cek1:
ketemu = True
hasil1 = True
ka.remove(cek1)
break
else:
hasil1 = False

21
jum-=1
ketemu = True
hasil = hasil1
pembanding = hasil and hasil1
print(soal +'-> '+ str(pembanding))

print('==========================================================================')

print('============= Copyright = Wahyu Akbar Wiboowo (160411100112) =============')

print('==========================================================================')

2.11 Queue Python

Queue atau antrian adalah barisan elemen/data, dimana ketika elemen/data baru ditambah
maka penambahannya akan berada di posisi belakang (rear) dan jika dilakukan pengambilan elemen
dilakukan di elemen paling depan (front). Queue dikenal bersifat FIFO (first in first out).

Contoh Program :
# QUEUE
#=======================================================================
 

22
 
import os
import Queue
 
class myQueue:
    def __init__(self):
        self.items = Queue.Queue()
  
    # Memeriksa apakah queue dalam keadaan kosong
    def isEmpty(self):
        return self.items.empty()
    # Menambah data ke queue
    def qPut(self, item):
        self.items.put(item)
    # Mengeluarkan data dari queue
    def qGet(self):
        if not self.items.empty():
            return self.items.get()
        else:
            return "empty" 
    # Menghitung panjang queue
    def size(self):
        return self.items.qsize()
  
    # Main menu aplikasi
    def mainmenu(self):
        pilih = "y"
        while (pilih == "y"):
            os.system("clear")
            print("=========================")
            print("|  Menu aplikasi queue  |")
            print("=========================")
            print("1. Put objek")
            print("2. Get objek")
            print("3. Cek Empty")
            print("4. Panjang dari queue")
            print("=========================")
            pilihan=str(input(("Silakan masukan pilihan anda: ")))
            if(pilihan=="1"):
                os.system("clear")
                obj = str(input("Masukan objek yang ingin anda tambahkan: "))
                self.qPut(obj)
                print("Object "+obj+" telah ditambahkan")
                x = input("")
            elif(pilihan=="2"):
                os.system("clear")
                temp = self.qGet()
                if temp != "empty":

23
                    print("Objek "+temp+" dihapus")
                else:
                    print("Queue kosong")
                x = input("")
            elif(pilihan=="3"):
                os.system("clear")
                print(self.isEmpty())
                x = input("")
            elif(pilihan=="4"):
                os.system("clear")
                print("Panjang dari queue adalah: "+str(self.size()))
                x = input("")
            else:
                pilih="n"  
 
if __name__ == "__main__":
    q=myQueue()
    q.mainmenu()

2.12 String Pyhton


String adalah jenis yang paling populer di bahasa pemrograman. Kita bisa membuatnya hanya
dengan melampirkan karakter dalam tanda kutip. Python memperlakukan tanda kutip tunggal sama
dengan tanda kutip ganda. Membuat string semudah memberi nilai pada sebuah variabel.

Dibawah ini adalah contoh sederhana dari sebuah string pada bahasa pemrograman Python.

print("Hello World")

Mengakses Nilai dalam String


Python tidak menggunakan tipe karakter titik koma ; Ini diperlakukan sebagai string dengan
panjang satu, sehingga juga dianggap sebagai substring.

Untuk mengakses substring, gunakan tanda kurung siku untuk mengiris beserta indeks atau
indeks untuk mendapatkan substring Anda. Sebagai contoh :

name = 'John Doe' message = "John Doe belajar bahasa python di Belajarpython"
print ("name[0]: ", name[0])
print ("message[1:4]: ", message[1:4])

Bila kode diatas dieksekusi, maka akan menghasilkan hasil sebagai berikut :

24
name[0]: J   message[1:4]: ohn

Mengupdate String
Anda dapat “memperbarui” string yang ada dengan (kembali) menugaskan variabel ke string
lain. Nilai baru dapat dikaitkan dengan nilai sebelumnya atau ke string yang sama sekali berbeda sama
sekali. Sebagai contoh

message = 'Hello World'


print ("Updated String :- ", message[:6] + 'Python')

Bila kode diatas dieksekusi, maka akan menghasilkan hasil sebagai berikut :

Updated String :- Hello Python

2.13 Object & Class Python


Python telah menjadi bahasa berorientasi objek sejak bahasa Python sendiri dibuat. Untuk
membuat dan menggunakan kelas dan objek pada Python benar-benar mudah. Pada tutorial ini Anda
akan dibantu untuk menjadi ahli dalam penggunaan pemrograman berorientasi objek Python.

Jika Anda tidak memiliki pengalaman sebelumnya dengan pemrograman berorientasi objek
(OOP), Anda mempelajarinya terlebih dahulu agar Anda dapat memahami konsep dasarnya.

Jika memang sudah mengerti konsep dasar OOP berikut ini adalah pengenalan dari Object-
Oriented Programming (OOP) untuk membantu Anda.

Istilah Dalam OOP

Istilah Penjelasan

Prototipe yang ditentukan pengguna untuk objek yang mendefinisikan seperangkat atribut
Class yang menjadi ciri objek kelas apa pun. Atribut adalah data anggota (variabel kelas dan
variabel contoh) dan metode, diakses melalui notasi titik.

Sebuah variabel yang dibagi oleh semua contoh kelas. Variabel kelas didefinisikan dalam
Class variable kelas tapi di luar metode kelas manapun. Variabel kelas tidak digunakan sesering variabel
contoh.

25
Istilah Penjelasan

Variabel kelas atau variabel contoh yang menyimpan data yang terkait dengan kelas dan
Data member
objeknya.

Function Penugasan lebih dari satu perilaku ke fungsi tertentu. Operasi yang dilakukan bervariasi
overloading menurut jenis objek atau argumen yang terlibat.

Instance Variabel yang didefinisikan di dalam sebuah metode dan hanya dimiliki oleh instance kelas
variable saat ini.

Inheritance Pengalihan karakteristik kelas ke kelas lain yang berasal darinya.

Objek individu dari kelas tertentu. Obyek obj yang termasuk dalam Lingkaran kelas,
Instance
misalnya, adalah turunan dari Lingkaran kelas.

Instantiation Penciptaan sebuah instance dari sebuah kelas.

Method Jenis fungsi khusus yang didefinisikan dalam definisi kelas.

Contoh unik dari struktur data yang didefinisikan oleh kelasnya. Objek terdiri dari kedua
Object
anggota data (variabel kelas dan variabel contoh) dan metode.

Operator
Penugasan lebih dari satu fungsi ke operator tertentu.
overloading

Membuat Class Python


Statement class digunakan untuk membuat definisi kelas baru. Nama kelas segera mengikuti kelas kata
kunci diikuti oleh titik dua sebagai berikut.

class ClassName:   'Optional class documentation string'   class_suite

Dibawah ini adalah contoh cara membuat class dan penggunaanya :

class Employee:

26
'Common base class for all employees'
empCount = 0

def __init__(self, name, salary):


self.name = name
self.salary = salary
Employee.empCount += 1

def displayCount(self):
print "Total Employee %d" % Employee.empCount

def displayEmployee(self):
print "Name : ", self.name, ", Salary: ", self.salary

Membuat Instance Objects


Untuk membuat instances kelas, Anda memanggil class menggunakan nama class dan meneruskan
argumen apa pun yang metode init terima.

This would create first object of Employee class


emp1 = Employee("Zara", 2000)
This would create second object of Employee class
emp2 = Employee("Manni", 5000)

Mengakses Atribut
Anda mengakses atribut objek menggunakan dot operator dengan objek. Variabel kelas akan diakses
dengan menggunakan nama kelas sebagai berikut :

emp1.displayEmployee()
emp2.displayEmployee()
print ("Total Employee %d" % Employee.empCount)

Contoh lengkapnya, silahkan lihat kode dibawah ini.

class Employee:
'Common base class for all employees'
empCount = 0

def __init__(self, name, salary):


self.name = name
self.salary = salary
Employee.empCount += 1

def displayCount(self):
print ("Total Employee %d" % Employee.empCount)

27
def displayEmployee(self):
print ("Name : ", self.name, ", Salary: ", self.salary)

#This would create first object of Employee class"


emp1 = Employee("Zara", 2000)
#This would create second object of Employee class"
emp2 = Employee("Manni", 5000)
emp1.displayEmployee()
emp2.displayEmployee()
print ("Total Employee %d" % Employee.empCount)

Latihan 1

28
Latihan 2

29
Latihan 3

30
Latihan 4

31
Latihan 5

32
Latihan 6

Latihan 7

33
Latihan 8

34
Latihan 9

Daftar Pustaka
https://belajarpython.com/tutorial/tuple-python

https://id.wikipedia.org/wiki/Python_%28bahasa_pemrograman%29

35

Anda mungkin juga menyukai