Munawar - Modul Praktikum Python 2021
Munawar - Modul Praktikum Python 2021
Disusun oleh:
Munawar, PhD
Standard Kompetensi
1. Mahasiswa mampu menguasai bahasa pemrograman menggunakan Phyton.
2. Mampu mengidentifikasi, memformulasikan dan menganalisis masalah.
3. Mampu membuat program komputer dengan bahasa pemrograman Python untuk
merealisasikan algoritma-algroitma penyelesaian masalah tertentu
4. Mampu membuat diagram alir dari suatu algoritma penyelesaian masalah
tertentu.
Kompetensi Dasar
Setelah mempelajari bab ini, mahasiswa:
• Mengenali fungsi pemrograman Python
• Mampu menggunakan software pendukung dengan baik
• Mampu melakukan pengaturan toolbox dan kontrol pada Python
Indikator
• Dapat mengetahui proses instalasi Python
o Mampu memahami proses pemrograman Python
• Dapat mengetahui dasar penggunaan Python
o Mampu mengidentifikasikan berbagai bentuk tampilan pada Python
print("Hello World")
Python bersifat case sensitif, ini artinya huruf besar dan huruf kecil memiliki
perbedaan. Aturan ini berlaku untuk nama variabel ataupun fungsi-fungsi lainnya.
Komentar (comment) adalah kode di dalam script Python yang tidak dieksekusi atau
tidak dijalankan mesin. Komentar hanya digunakan untuk menandai atau memberikan
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
script tersebut. Untuk menggunakan komentar anda cukup menulis tanda pagar # , diikuti
dengan komentar. Dibawah ini adalah contoh penggunaan komentar pada Python.
#satu
#baris
"""
"""
Kompetensi Dasar
Setelah mempelajari bab ini, mahasiswa:
• Mampu mengenali tipe data, operator dan fungsi matematis pada Phyton
• Mampu membuat program dan mengeksekusi program
Indikator
• Dapat mengenali tipe data, operator dan fungsi matematis pada Phyton
o Mampu memahami penggunaan tipe data, operator dan fungsi matematis
pada Phyton
• Dapat membuat program dan mengeksekusi program
o Mampu mengidentifikasikan perintah pengaturan berdasarkan fungsitertentu
dan menjalankan program tersebut
Untuk mencoba berbagai tipe data, silahkan coba script python berikut ini
#String
#fungsi untuk mengecek jenis tipe data. akan tampil <class 'dict'> yang
berarti dict adalah tipe data dictionary
Python bisa mengkonversi tipe data dengan menggunakan fungsi. Dibawah ini adalah
beberapa fungsi untuk mengkonversi tipe data number Python.
2.1.2. Operator
Operator adalah konstruksi yang dapat memanipulasi nilai dari operan. Sebagai
contoh operasi 3 + 2 = 5. Disini 3 dan 2 adalah operan dan + adalah operator. Terdapat
beberapa tipe operator, yaitu:
Dibawah ini adalah contoh penggunaan operator aritmatika dalam pemrograman Python.
#Pengurangan
hutang = 10000
bayar = 5000
sisaHutang = hutang - bayar
print("Sisa hutang Anda adalah ", sisaHutang)
#Perkalian
panjang = 15
lebar = 8
luas = panjang * lebar
print(luas)
#Pembagian
kue = 16
anak = 4
kuePerAnak = kue / anak
print("Setiap anak akan mendapatkan bagian kue sebanyak ", kuePerAnak)
#Pangkat
bilangan3 = 8
bilangan4 = 2
hasilPangkat = bilangan3 ** bilangan4
print(hasilPangkat)
#Pembagian Bulat
print(10//3)
#10 dibagi 3 adalah 3.3333. Karena dibulatkan maka akan menghasilkan nilai 3
10 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
Tabel 2.3. Operator Penugasan
Operator Contoh Penjelasan
Sama dengan = a=1 Memberikan nilai di kanan ke dalam variabel
yang berada di sebelah kiri.
Tambah sama a+=2 Memberikan nilai variabel dengan nilai variabel itu
dengan += sendiriditambah dengan nilai di sebelah kanan.
Kurang sama a-=2 Memberikan nilai variabel dengan nilai variabel itu
dengan -= sendiridikurangi dengan nilai di sebelah kanan.
Kali sama dengan a*=2 Memberikan nilai variabel dengan nilai variabel itu
*= sendiridikali dengan nilai di sebelah kanan.
Bagi sama dengan a/=4 Memberikan nilai variabel dengan nilai variabel itu
/= sendiri
Sisa bagi sama a%=3 Memberikan nilai variabel dengan nilai variabel
dengan %= itu sendiridibagi dengan nilai di sebelah kanan.
Yang diambil nantinya adalah sisa baginya.
Pangkat sama a**=3 Memberikan nilai variabel dengan nilai variabel itu
dengan **= sendiridipangkatkan dengan nilai di sebelah kanan
Pembagian bulat a//=3 Membagi bulat operan sebelah kiri operator
sama dengan //= dengan operan sebelah kanan operator
kemudian hasilnya diisikanke operan sebelah kiri.
11 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
Log log(x) Logaritma dari x, untuk x > 0.
Python dapat juga digunakan untuk melakukan perhitungan trigonometri. Berikut adalah daftar
penggunaan fungsi trigonometri.
Phyton juga dilengkapi dengan fungsi untuk mendefinisikan dua konstanta matematika
yang sering digunakan dalam perhitungan, yaitu:
12 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
Tabel 2.6 Fungsi konstanta
Nama Penggunaan Penjelasan
Pi pi Konstanta pi matematika
e e Konstanta e matematika
Selain fungsi di atas, terdapat fungsi nomor acak digunakan untuk aplikasi
permainan, simulasi, pengujian, keamanan, dan privasi. Python mencakup fungsi berikut
yang umum digunakan. Berikut adalah daftar fungsi nomor acak.
13 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
angka di belakang koma, berarti gunakan %.2f
%s : mewakili string
# Menjumlahkan bilangan
jumlah = float(bil1) +
float(bil2)
# Menampilkan jumlah
print('Jumlah {0} + {1} adalah {2}'.format(bil1, bil2, jumlah))
14 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
Modul 3.
Variabel
Kompetensi Dasar
Setelah mempelajari bab ini, mahasiswa:
• Mampu mengenali jenis data, variabel, dan konstanta
• Mampu melakukan deklarasi variabel dan konstanta dalam pemrograman
Indikator
Dapat mengenali jenis data, variabel, dan konstanta
• Mampu memahami penggunaan masing-masing data, variabel dan
konstanta
Melakukan deklarasi variabel dan konstanta dalam pemrograman
• Mampu melakukan deklarasi variabel.
• Dapat membuat suatu pemrograman sederhana
Membuat variabel di Python caranya sangat mudah, tuliskan nama variable lalu isi
dengan suatu nilai dengan cara menambahkan tanda sama dengan = diikuti dengan nilai yang
ingin dimasukan. Cara tersebut digunakan untuk input nilai dalam variabel, kemudian kita
15 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
outputkan atau kita print ke compiller. Berikut contoh sederhana penggunaan variabel dalam
pemrograman python
#deklarasi variabel
var_variabel = “AKU HEBAT”
#output variabel
print(var_variabel)
Dibawah ini adalah contoh penggunaan variabel dalam bahasa pemrograman Python.
#proses memasukan data ke dalam variabel
nama = "John Doe"
#proses mencetak variabel
print(nama)
namaDepan = "Budi"
namaBelakang = "Susanto"
nama = namaDepan + " " + namaBelakang
umur = 22
hobi = "Berenang"
print("Biodata\n", nama, "\n", umur, "\n", hobi)
panjang = 10
lebar = 5
luas = panjang * lebar
print(luas)
16 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
3. Simpan sesuai nama yang ada.
4. Untuk menjalankan program gunakan terminal / command line, ketik python
namaprogram.py.
Harap diingat, Python bersifat case sensitive. Maksudnya huruf besar dan huruf kecil
memiliki perbedaan. Sebagai contoh jika Anda menggunakan fungsi print dengan huruf kecil
print() akan berhasil. Sebaliknya jika menggunakan huruf besar Print() atau PRINT() akan
muncul pesan error.
Secara implisit, Python menyarankan menggunakan satu statemen tiap baris untuk
menjadikan kode menjadi lebih mudah dibaca. Karakter spasi penting untuk bahasa
pemrogramman Python. Lebih tepatnya spasi diawal baris atau indentasi. Spasi di awal (baik
berupa spasi atau tab) baris logis digunakan untuk menentukan level indentasi, yang akan
mempengaruhi pengelompokan statemen. Statemen yang mempunyai level indentasi sama
masuk dalam satu kelompok yang disebut blok / block. Hal ini akan dijelaskan pada bab
berikutnya.
17 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
# import module matematika math
import math
# Input koefisien dari keyboard
a = int(input('Masukkan a: '))
b = int(input('Masukkan b: '))
c = int(input('Masukkan c: '))
# hitung
X=a+b+c
print('Solusinya adalah ', X)
Latihan
1. Buatlah program serupa dengan melibatkan 5 bilangan dan operasi aritmatika
seperti pada modul bab 2
2. Jelaskan hasil dan logikanya
18 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
Modul 4.
SELEKSI KONDISI
Kompetensi Dasar
Setelah mempelajari bab ini, mahasiswa:
• Mampu mengenali jenis operator perbandingan, logika dan bitwise
• Mampu melakukan pemrograman dan penggunaan fungsi logika
Indikator
Dapat mengenali jenis kontrol
• Mampu memahami penggunaan masing-masing jenis kontrol
Dapat melakukan perintah pengaturan dan pemrograman kontrol
• Mampu melakukan pengaturan kontrol.
• Dapat membuat pemrograman control pada aplikasi
19 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
Lebih besar 5 >= 3 bernilai True Jika nilai operan kiri lebih besar dari nilai
atau sama operan kanan, atau sama, maka kondisi menjadi benar.
dengan >=
Lebih kecil 5 <= 3 bernilai True Jika nilai operan kiri lebih kecil dari nilai
atau sama operan kanan, atau sama, maka kondisi menjadi benar
dengan <=
4.1.2. Pencabangan
1. If …. Then
Perintah yang dipergunakan untuk menguji suatu kondisi, bila kondisi memenuhi syarat
maka suatu perintah di kerjakan, tetapi bila tidak memenuhi syarat maka dilewatkan atau
mengerjakan suatu perintah yang lain.
If kondisi Then
perintah
End if
Pengambilan keputusan (kondisi if) digunakan untuk mengantisipasi kondisi yang terjadi saat
jalannya program dan menentukan tindakan apa yang akan diambil sesuai dengan kondisi.
Pada python ada beberapa statement / kondisi diantaranya adalah if, else, dan elif.
Kondisi if digunakan untuk mengeksekusi kode jika kondisi bernilai benar True. Jika kondisi
bernilai salah False maka statement / kondisi tidak akan di-eksekusi. Berikut ini adalah contoh
penggunaan kondisi if pada python.
#Kondisi if adalah kondisi yang akan dieksekusi oleh program jika bernilai benar atau TRUE
nilai = 90
nilai = 60
Dari contoh program di atas, saat program dijalankan akan dicetak ‘Selamat Anda Lulus’,
karena nilai pertama adalah 90. Jadi memenuhi syarat. Namun pada kondisi if yang kedua,
tidak akan ada pencetakan ‘Selamat Anda Lulus’ karena kondisinya tidak memenuhi syarat.
2. Kondisi If Else
Bentuk ke 2 dari If…..Then….. adalah If…..Then…..Else dengan
menggunakan 2 (dua) perintah untuk dipilih dijalankan
20 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
If kondisi Then
perintah 1
Else
perintah 1
end if
nilai = 3
#Jika pernyataan pada if bernilai TRUE maka if akan dieksekusi, tetapi jika FALSE
kode pada else yang akan dieksekusi.
Pada contoh di atas, jika program dijalankan maka akan mencetak string ‘Maaf Anda Tidak
Lulus’, karena nilai 3 kurang dari 70, sehingga yang dieksekusi adalah yang ada di kondisi
else.
3. Kondisi Elif
Pengambilan keputusan (kondisi if elif) merupakan lanjutan/ percabangan logika
dari “kondisi if”. Dengan elif kita bisa membuat kode program yang akan menyeleksi
beberapa kemungkinan yang bisa terjadi. Hampir sama dengan kondisi “else”, bedanya
kondisi “elif” bisa banyak dan tidak hanya satu. Dibawah ini adalah contoh penggunaan
kondisi elif pada Python:
21 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
#Contoh penggunaan kondisi elif
hari_ini = "Minggu"
if(hari_ini == "Senin"):
print("Saya akan kuliah")
elif(hari_ini == "Selasa"):
print("Saya akan kuliah")
elif(hari_ini == "Rabu"):
print("Saya akan kuliah")
elif(hari_ini == "Kamis"):
print("Saya akan kuliah")
elif(hari_ini == "Jumat"):
print("Saya akan kuliah")
elif(hari_ini == "Sabtu"):
print("Saya akan kuliah")
elif(hari_ini == "Minggu"):
print("Saya akan libur")
Program di atas, jika dijalankan hasilnya akan mencetak string ‘Saya akan libur’. Mengapa
demikian?
Soal Latihan
Buatlah aplikasi sederhana untuk membuat grading nilai dimana ketentuannya adalah
sebagai berikut:
Nilai Grade
>80 A
70 - 80 B
60 - 70 C
50 - 60 D
< 50 E
22 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
Modul 5.
FUNCTION
Kompetensi Dasar
Setelah mempelajari bab ini, mahasiswa:
• Mampu mengenali jenis fungsi
• Mampu membuat berbagai jenis fungsi untuk perhitungan tertentu
Indikator
Dapat mengenali jenis fungsi
• Mampu memahami penggunaan masing-masing fungsi pada program
Dapat membuat program berbagai jenis fungsi
• Dapat melakukan pengaturan property form.
• Dapat membuat suatu pemrograman untuk merubah properti
5.1. Uraian Materi
Fungsi (Function) adalah suatu program terpisah dalam blok sendiri yang
berfungsi sebagai sub-program (modul program) yang merupakan sebuah program kecil
untuk memproses sebagian dari pekerjaan program utama. Fungsi dapat digunakan
untuk mengumpulkan beberapa perintah yang sering dipakai dalam sebuah program.
Penggunaan fungsi membuat program yang dibuat menjadi lebih terstruktur,
mudah diikuti, serta mempersingkat waktu pengembangan Hal ini karena dapat dibuat
dengan memberi nama pada block statement, kemudian nama yang ditentukan dapat
dipanggil di manapun dalam program.
Fungsi pada pemrograman Phyton akan dapat dikategorikan ke dalam 2
kelompok, yaitu:
1. Standard Library Function
Fungsi-fungsi yang telah disediakan oleh Interpreter Python dalam file-file atau
librarynya.
2. User Defined Function
Fungsi yang dibuat sendiri. Function ini memiliki nama tertentu yang unik dalam
program, letaknya terpisah dari program utama, dan bisa dijadikan satu ke dalam suatu
library.
Fungsi pada Python didefinisikan menggunakan kata kunci def, dimana urutannya
setelah def dilanjutkan nama pengenal fungsi diikut dengan parameter yang diapit oleh tanda
kurung dan diakhir dingan tanda titik dua (:).
23 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
Selanjutnya berupa blok fungsi yang akan dijalankan jika fungsi dipanggil. Contoh
penggunaannya
#lat1.py
def halo_dunia ():
print 'Halo Dunia!'
halo_dunia ()
#memanggil fungsi halo_dunia
halo_dunia ()
# fungsi halo_dunia dipanggil lagi
# lat2.py
def halo(nama):
print 'Halo %s!' % nama
def cetak_maksimal (a, b):
if a > b:
print '%s merupakan nilai maksimal' % a
elif a == b:
print '%s sama dengan %s' % (a, b)
else:
print '%s merupakan nilai maksimal' % b
halo('Dunia') # memanggil fungsi halo dengan argumen 'Dunia'
halo('Indonesia') # memanggil fungsi halo dengan argumen 'Indonesia'
cetak_maksimal (10, 100)
x=9
y=3
cetak_maksimal (x, y)
24 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
fungsi (100)
print 'nilai x masih %s' % x
Apabila dikehendaki menulis variabel diluar fungsi anda dapat menggunaan statemen
global.
# lat4.py
x = 50
def fungsi():
print 'x = ', x
def fungsi2():
x = 100 # menulis ke lokal variabel
print 'x = ', x
def fungsi3():
global x
x = 100
print 'x = ', x
fungsi()
print 'nilai x = ', x
fungsi2()
print 'nilai x = ', x
fungsi3()
print 'nilai x = ', x
Apabila hendak membuat fungsi dengan banyak parameter dan anda hanya ingin
menspesifikasikan sebagian, dapat menggunakan keyword argumen. Dimana nama
(keyword) melainkan posisi (argumen posisi, normal pemanggilan).
# lat5.py
def fungsi(a, b=5, c=10):
print 'a = ', a
print 'b = ', b
print 'c = ', c
fungsi(3, 7)
fungsi(25, c=24)
fungsi(c=50, a=100)
Apabila dikehendaki membuat fungsi yang dapat menerima jumlah argumen yang tidak
tentu dapat menggunakan tanda *. Contoh penggunaannya sebagai berikut:
25 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
# lat6.py
def total(*bilangan, **keywords):
hitung = 0
for bil in bilangan:
hitung += bil
for key in keywords:
hitung += keywords[key]
return hitung
print total(1, 2, 3, 4, 5)
print total(daging=2, sayur=10, buah=3)
print total(7, 8, 5, daging=2, sayur=10, buah=3)
Tugas
1. Buatlah program sederhana, dengan menggunakan function untuk menyelesaikan
perhitungan terkait masalah di dunia bisnis
2. Berikan penjelasan logikanya
26 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
Modul 6.
PERULANGAN (LOOPING)
Kompetensi Dasar
Setelah mempelajari bab ini, mahasiswa:
• Mampu mengenali perulangan pada Python
• Mampu membuat program perulangan
Indikator
Dapat mengenali jenis perulangan
• Mampu memahami penggunaan masing-masing jenis perulangan
Dapat membuat program perulangan
• Dapat membuat program berbasis For In atau While.
• Dapat mengaplikasikan program perulangan ke dalam program perhitungan
27 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
# lat1.py
# acak looping
nomor_acak = 77
berjalan = True
print 'tebak nomor acak dari 1 - 100'
while berjalan:
tebakan = int(raw_input('Tebakan anda (bil bulat): '))
if tebakan == nomor_acak:
print 'Selamat! tebakan anda benar'
print 'tapi tidak ada hadiah untuk anda :('
berjalan = False
elif tebakan < nomor_acak:
print 'tebakan anda terlalu kecil'
else:
print 'tebakan anda terlalu besar'
else:
print 'selesai’
Perulangan diatas berhenti jika berjalan (kondisi) bernilai False. True dan False merupakan
obyek bertipe boolean, dan nilai True sama dengan nilai 1, nilai False sama dengan nilai 0.
>>> True == 1
True
>>> False == 0
True
Obyek dapat dinilai atau dikonversi ke nilai Boolean
>>> bool('nama')
True
>>> bool('')
False
>>> bool(0)
False
28 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
Struktur penulisan statemen for:
forvariabel in iterable:
pernyataan 1
pernyataan 2
dan seterusnya
Range: range(nilai_awal,nilai_akhir,pencacah)
range(nilai_awal,nilai_akhir)
range(nilai_akhir)
Contoh penggunaan range untuk menampilkan bilangan dari 1 – 100 dengan penambahan/
pencacah 1 dengan menambahkan end=’ ’ agar bilangan tampil secara horizontal tidak
pindah baris ke bawah:
for I in range (1, 101, 1): print (i, end=’ ‘)
hasil dari perulangannya adalah sebagai berikut:
Apabila kita menghendaki menampilkan dari bilangan tertentu sampai bilangan tertentu
dengan menampilkan bilangan tampil secara horizontal tidak pindah baris ke bawah.
Perintahnya adalah
awal= int (input (‘Set Nilai Awal =’))
akhir= int (input (‘Set Nilai Awal =’))
count=0
sum=0
print (‘Bilangan antara %d dan %d’ %(awal, akhir))
for I in range (awal, akhir+1):
print (i, end=’ ‘)
count=count+1
sum=sum+i
print (‘Bilangan di atas ada %d bilangan’ %count)
print (‘Jumlah semua bilangan adalah %d %summ)
29 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
Hasil dari pengulangan for in di atas akan terlihat seperti berikut
Contoh penggunaan perintah for bertingkat ditunjukkan pada program berikut. Dalam
program ini baris dinyatakan dengan x dan untuk kolom dinyatakan dengan y, lalu selanjutnya
antara baris dan kolom nilainya dilakukan perkalian. Programnya:
for x in range(1, 3):
for y in range(1, 3):
print (x, y, x*y)
Hasil dari program ini adalah:
30 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
Penerapannya untuk menyelesaikan masalah-masalah perhitungan diantaranya
perhitungan matriks, perhitungan total pembelian (kuitansi) maupun soal yang lainnya.
Berikut contoh aplikasi menghitung rata-rata dari M orang mahasiswa dari N buah mata
kuliah yang diambil. Banyaknya mahasiswa (M) diset sebagai baris (for level 1) dan
banyaknya mata kuliah (N) yang diambil sebagai kolom (for level 2). Adapun
perintahnya adalah sebagai berikut:
banyakMhs= int(input(‘Banyak Mahasiswa:’))
for M in range (banyakMhs):
print (‘Mahasiswa ke-’, M+1)
banyakMK = int (input(‘Banyak Matakuliah diambil:’))
totalnilai=0
for N in range(banyakMK):
nilai= int(input(‘Input Nilai ke %d :’ %(N+1))
totalnilai=totalnilai+nilai
rerata=totalnilai/banyakMK
print(‘Rata-rata:’, rerata)
Program ini akan terus meminta inputan pengguna dan akan berhenti ketika pengguna
menginputkan keluar.
31 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
# lat3.py
for i in range(1, 11):
print i
if i == 5:
break
else:
print "Tidak dijalankan karena break"
Bagian else tidak akan dijalankan karena perulangan tidak berhenti secara normal.
Latihan
1. Buatlah program untuk menampilkan bilangan dari bilangan tertentu sampai
bilangan tertentu dengan pencacah 3 dan menghitung hasil perkalian untuk
semua bilangan yang ada
2. Buatlah program untuk menampilkan bentuk bilangan seperti berikut ini:
Bilangan: <input suatu bilangan (misal:5)>
1
12
123
1234
12345
32 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
Modul 7.
STRUKTUR DATA
Kompetensi Dasar
Setelah mempelajari bab ini, mahasiswa:
• Mampu mengenali jenis struktur data
• Mampu membuat program dengan struktur data yang tepat
Indikator
Dapat mengenali jenis struktur data
• Mampu memahami penggunaan masing-masing struktur data
• Mampu Menyusun suatu program untuk membuat suatu struktur data
Dapat membuat program dengan struktur data yang tepat
• Dapat membuat program untuk suatu struktur data tertentu.
7.1.1. List
List merupakan struktur data paling dasar. List menyimpan koleksi data terurut, di
dalamnya kita dapat menyimpan sequence atau rangkaian item menggunakan list. Item dalam
list ditutup menggunakan kurung siku [] (list literal). Setelah list dibuat anda bisa menambah,
mengurangi, dan mencari item pada list karena bersifat mutable.
Akses nilai dalam list python menggunakan 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:
33 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
#Cara mengakses nilai di dalam list Python
list[2] = 2001
Menghapus nilai di dalam list python, dapat dilakukan menggunakan metode remove() jika
Anda tidak tahu persis item mana yang akan dihapus. Sebagai contoh:
7.1.2. Tupple
Tuple sangat mirip dengan list namun tuple bersifat immutable (tidak bisa diubah
setelah didefinisikan). Tuple dibuat dengan menspesifikasikan item tuple dipisahkan
menggunakan tanda koma dan opsional diapit dengan tanda kurung.
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', 1990, 2019)
tup2 = (1, 2, 3, 4, 5 )
tup3 = "a", "b", "c", "d"
34 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
Setelah running kode, hasilnya akan seperti dibawah ini:
tup1[0]: fisika tup2[1:5]: (2, 3, 4, 5)
Tuple tidak berubah, namun dapat diperbaharui atau diubah nilai elemennya.
Merubahnya dilakukan dengan mengambil bagian dari tupel yang ada untuk membuat tupel
baru seperti ditunjukkan oleh contoh berikut:
# Aksi seperti dibawah ini tidak bisa dilakukan pada tuple python
# Karena memang nilai pada tuple python tidak bisa diubah
# tup1[0] = 100;
Menghapus elemen tuple individual tidak mungkin dilakukan. Tentu saja, tidak ada
yang salah dengan menggabungkan tupel lain dengan unsur-unsur yang tidak diinginkan
dibuang. Secara eksplisit menghapus keseluruhan tuple, cukup gunakan del statement.
Sebagai contoh:
print (tup)
del tup;
print "Setelah menghapus tuple: "
print tup
7.1.3. Dictionary
Dictionary seperti halnya buku alamat, dengan buku alamat anda bisa mencari
alamat atau detail kontak hanya menggunakan nama orang yang anda cari. Setiap key
dipisahkan dari value-nya oleh titik dua (:), item dipisahkan oleh koma, dan semuanya
35 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
tertutup dalam kurung kurawal. Catatan key harus bersifat unik, anda tidak bisa menemukan
informasi yang tepat jika ada dua orang yang mempunyai nama yang sama
dalam buku alamat anda.
Akses elemen Dictionary dapat dilakukan menggunakan tanda kurung siku yang
sudah dikenal bersama dengan key untuk mendapatkan nilainya. Berikut adalah contoh
sederhananya:
Pembaharuan dictionary dapat dilakukan dengan menambahkan entri baru atau pasangan
nilai kunci, memodifikasi entri yang ada, atau menghapus entri yang adaseperti ditunjukkan
pada contoh sederhana yang diberikan di bawah ini.
Elemen Dictionary individual atau menghapus keseluruhan isi Dictionary. Anda juga
dapat menghapus seluruh Dictionary dalam satu operasi. Untuk menghapus seluruh
Dictionary secara eksplisit, cukup gunakan del statement. Berikut adalah contoh sederhana:
List, tuple dan string merupakan contoh dari sequence. Sequence dapat
digunakan untuk melakukan tes keanggotaan, operasi index (akses, slicing), dan iterasi
pada sequence.
36 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
#lat7.py
daftar_belanja = ['apel', 'mangga', 'wortel', 'pisang']
nama = 'budi'
print 'Barang 0 =', daftar_belanja[0]
print 'Barang 1 =', daftar_belanja[1]
print 'Barang 2 =', daftar_belanja[2]
print 'Barang 3 =', daftar_belanja[3]
print 'Barang -1 =', daftar_belanja[-1]
print 'Barang -2 =', daftar_belanja[-2]
print 'Karakter 0 =', nama[0]
# slicing pada list
print 'Barang 1 ke 3:', daftar_belanja[1:3]
print 'Barang 2 ke terakhir:', daftar_belanja[2:]
print 'Barang 1 ke -1:', daftar_belanja[1:-1]
print 'Barang dari awal ke akhir:', daftar_belanja[:]
# slicing pada string
print 'Karakter 1 ke 3:', nama[1:3]
print 'Karakter 2 ke terakhir:', nama[2:]
print 'Karakter 1 ke -1:', nama[1:-1]
print 'Karakter dari awal ke akhir:', nama[:]
7.1.4. Set
Set merupakan suatu koleksi obyek yang tidak terurut. Digunakan ketika
keberadaan obyek pada koleksi lebih penting daripada urutan dan berapa kali obyek
muncul pada koleksi.
# lat8.py
negara = set(['brazil', 'rusia', 'indonesia'])
print 'indonesia' in negara
print 'amerika' in negara
negara2 = negara.copy()
negara2.add('korea')
print negara2.issuperset(negara)
negara.remove('rusia')
print negara2 & negara
print negara2.intersection(negara)
7.1.5. Reference
Apabila membuat obyek dan mengisinya ke variabel, variabel hanya me refer ke
37 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
obyek dan tidak merepresentasikan obyek itu sendiri. Nama variabel akan menunjuk ke
memori komputer dimana obyek disimpan. Hal ini dinamakan binding antara nama ke
obyek.
# lat9.py
daftar_belanja = ['apel', 'mangga', 'wortel', 'pisang']
print 'assignment biasa'
daftar_saya = daftar_belanja
del daftar_belanja[0]
print 'daftar belanja:', daftar_belanja
print 'daftar saya:', daftar_saya
print 'copy obyek daftar belanja menggunakan slice [:]'
daftar_saya = daftar_belanja[:] # membuat copy
del daftar_saya[0]
print 'daftar belanja:', daftar_belanja
print 'daftar saya:', daftar_saya
7.1.6. String
String merupakan jenis yang paling populer di bahasa pemrograman.
Pemrogramannya 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. Contoh sederhana dari sebuah string pada
bahasa pemrograman Python.
# lat10.py
nama = 'Indonesia'
if nama.lower().startswith('ind'):
print 'Nama diawal dengan "ind"'
if 'ne' in nama:
print 'Nama berisi string "ne"'
if nama.find('done') != -1:
print 'Nama berisi string "done"'
pembatas = ', '
daftar_belanja = ['apel', 'mangga', 'wortel', 'pisang']
print pembatas.join(daftar_belanja)
38 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D
Latihan
Buatlah program untuk mendata karyawan dengan ketentuan menggunakan
minimal 3 dari struktur data yang dijelaskan dalam bab ini.
39 | M o d u l P r a k t i k u m P y t h o n – M u n a w a r , P h D