Kata Pengantar
Pengenalan Phyton
Apa Itu Phyton
Sejarah Perkembangan Phyton
Instalansi Program Phyton
Instalansi Program Pyharm
Sintax Dasar Phyton
Penerapan Variabel
Aturan Penamaan Variabel
Variabel Dengan Multi Penugasan
Macam - Macam Tipe Data Python
Input Dan Output Di Python
Macam Operator Pada Python
Operator Logika
Operator Aritmatika
Operator Penugasan
Operator Perbandingan
Operator Bitwise
Operator Identitas
Operator Keanggotaan
Percabangan
Peryataan If
Pernyataan If...Else
Pernyataan If....Else...If
Definisi Perulangan
Perulangan Menggunakan For
Fungsi Range
Perulangan Menggunakan While
Infinite Loop
Kendali Looping
While Else
Pengertian Daftar/List
Pengertian Tuple
Kesamaan Antara Daftar/List Dan Tuple
String
Bilangan
Pengertian Fungsi
Penanganan Eksepsi
Menangani Eksepsi Dengan Try, Except, Dan Finally
1
KATA PENGANTAR
Segala puji dan syukur kami panjatkan kepada Tuhan Yang Maha Esa, ka
rena atas berkat dan limpahan rahmat-Nya kami dapat menyelesaikan
buku bahan ajar dengan tepat waktu. Berikut ini kami mempersembahkan
sebuah buku bahan ajar dengan judul “ Pengenalan Struktur Program Pht
on Dan IDE Pychrame”, yang menurut kami dapat memberikan manfaat u
ntuk menambah pengetahuan kita tentang bahasa pemograman phyton d
an IDE phychrame. Akhir kata, kami sampaikan terima kasih kepada semu
a pihak yang telah beperan dalam penyusunan buku bahan ajar ini dari aw
al sampai akhir. Semoga Tuhan Yang Maha Esa senantiasa meridhai usa
ha kami. Amin.
2
BAB I
Pengenalan Python
Pendahuluan
3
h perkembangan phyton, Instalansi program phyton dan Instalansi progra
m pychrame.
PENGENALAN PHYTON
Dalam buku ini akan menjelaskan apa saja yang perlu diketahui ketika
belajar Python pemula.
Sebelum belajar Phyton lebih jauh, kita harus mengetahui apa saja yang
bisa dilakukan dengan bahasa pemrograman ini.
Berikut ini beberapa hal yang dapat Kita lakukan menggunakan Python:
4
4. Python dimanfaatkan untuk membaca dan memodifikasi sebuah file
didalam pembangunan sistem database.
5. Python memungkinkan Kita untuk menangani big data dan menjala
nkan pemrosesan matematika yang komplek.
5
Python 2.0, dirilis pada tahun 2000, memperkenalkan fitur-fitur seperti p
emahaman daftar dan sistem pengumpulan sampah dengan penghitunga
n referensi.
Python 3.0, dirilis pada tahun 2008, adalah revisi utama dari bahasa yan
g tidak sepenuhnya kompatibel dengan versi sebelumnya, dan banyak ko
de Python 2 yang tidak berjalan tanpa modifikasi pada Python 3.
Python 2.0 dirilis pada 16 Oktober 2000 dengan banyak fitur utama baru,
termasuk pendeteksi siklus pengumpul sampah dan dukungan untuk Uni
code. Tanggal akhir masa pakai Python 2.7 yang awalnya ditetapkan pada
tahun 2015 kemudian ditunda hingga tahun 2020 karena sejumlah besar k
ode yang tidak dapat dengan mudah dilanjutkan ke Python 3. Fitur dan filo
sofi Python adalah bahasa pemrograman multi-paradigma. Pemrograman
berorientasi objek dan pemrograman terstruktur juga didukung penuh, dan
6
banyak fiturnya mendukung pemrograman fungsional dan pemrograman b
erorientasi aspek (termasuk dengan meta programming dan meta objects
(metode ajaib)). Banyak paradigma lain yang didukung melalui ekstensi, te
rmasuk desain berdasarkan kontrak dan pemrograman logika.
7
Di bawah ini adalah langkah-langkah instalasi program Python di Microsoft
Windows
Silakan Kita download versi terbaru dari Python sesuai dengan spesifikasi
dari sistem operasi komputer Kita.
8
Kemudian klik tombol Run.
Pilih "Install for all users" Jika hanya Kita yang menggunakan komputer ter
sebut.
9
Selanjutnya adalah pilih direktori tempat program Python akan Kita install.
Langkahnya adalah pada Start menu, ketik "environment" dan pilih "Edit th
e System Environment Variables".
10
Maka akan keluar jendela System Properties. Klik tab Advanced, kemudik
an klik tombol Environment Variables.
11
Pada jendela New System Variables, isikan:
Variable value: diisi dengan folder instalasi program Python seperti "C:\Pyt
hon27\;C:\Python27\Scripts;"
12
Klik OK untuk menutup jendela System Properties.
Pada Start menu, ketikkan tulisan "python" kemudian pilih "IDLE (Python
GUI)".
13
Maka akan keluar jendela Python shell. Coba Kita ketikkan print ("Selamat
belajar Python") pada python shell, kemudian tekan Enter.
14
INSTALANSI PROGRAM PYHARM
Setelah kita berhasil melakukan installasi python pada windows maka tah
ap selanjutnya untuk memudahkan teman-teman dalam melakukan coding
di perlukan sebuah IDE yang akan sangat membentu saat mengerjakan pr
oject karna tampilannya yang sangat user Frendly.
15
Proses installasi selesai dan selanjutnya ujicoba membuat project baru
16
Jika pada saat selesai membuat project baru belum muncul file dengan ek
stensi.py maka silahkan teman-teman buat manual dengan cara klik kana
n pada folder Lab Project > New > Python File > Nama File > OK setel
ah selesai silahkan uji coba buat perintah sederhana dengan perintah Prin
t kemudian Run
Hasilnya :
17
Bab II
Sintax Dasar Phyton
1. Penulisan Statement
Hasil pada langkah diatas sesuai dengan contoh yang ada pada langkah p
ertama, hanya saja pada contoh tersebut terlihat kurang rapi sehingga pen
ulisan diatas tidak disarankan.
18
2. Case Sensitif
Dalam pemrograman python, penulisan huruf besar dan huruf kecil diartik
an berbeda atau Case Sensitive.
Contoh :
3. Penulisan String
Seperti yang telah kita ketahui, string adalah kumpulan dari beberapa kara
kter.
Pada bahasa pemrograman python, penulisan string bisa menggunakan t
anda petik dua (“) dan bisa menggunakan tanda petik satu (‘).
Contoh :
19
4. Penulisan Blok Program
Selain bersifat case sensitif, python juga menerapkan aturan penulisan blo
k program. Setiap blok program memiliki fungsi yang berbeda dalam penul
isannya. Hal ini dikarenakan python tidak menggunakan tanda titik koma d
alam akhir statementnya.
Penulisan blok program harus ditambahkan indentasi (tab atau spasi 2x).
Adapun contoh penulisan blok program python yang benar seperti berikut :
Jika kita tidak menambahkan tab atau spasi 4x pada print, maka program
akan error. Seperti contoh dibawah ini.
5. Pembuatan Komentar
20
komentar ditandai dengan tanda pagar (#).
Saat sebuah string atau blok diberi awalan tanda pagar (#) maka blok pro
gram tersebut tidak akan di eksekusi oleh program.
Contoh :
string atau statement yang diberikan tanda pagar (#) tidak akan dieksekusi
program.
Variabel Python
Penerapan Variabel
Untuk lebih jelasnya dapat kita lihat contoh pembentukan variabel di bawa
h ini.
21
Sebelah kiri merupakan sebuah variabel dengan nama angka dan sebela
h kanan setelah tanda = merupakan data atau nilai yang diinputkan ke dal
am variabel angka. Variabel angka tersebut bernilai 5 yang merupakan bil
angan bulat, dalam pemahaman komputer bilangan bulat diwakilkan oleh i
nteger.
Kemudian bila terdapat variabel yang sudah tidak lagi digunakan, maka kit
a dapat menggunakan fungsi del untuk menghapus variable tersebut.
22
Aturan Penamaan Variabel
Syarat pertama membuat variabel adalah kita perlu memberikan nama unt
uk mendefinisikannya. Berikut merupakan aturan-aturan dalam pemberian
nama pada variabel antara lain:
1. Menamai variabel dengan awalan huruf atau garis bawah.
Contoh : nama atau _nama.
23
5. Terakhir, kita tidak diizinkan menamai variabel sama dengan kata k
unci atau istilah yang secara default ada dalam bahasa python, conto
hnya antara lain in, is, not, if, elif, else, for, while, def, dan lain-lain. Hal i
ni dikarenakan python akan menganggap kita menggunakan fungsi dari m
asing-masing istilah tersebut dan bukan membuat variabel.
Variabel dalam python juga memiliki fitur multi penugasan, ini memungkin
24
kan kita untuk menetapkan satu nilai yang sama kedalam banyak variabel
secara bersamaan.
Tipe data
Hal itu dapat kita selesaikan dengan penggunaan tipe data. Tipe data aka
n mendefinisikan atau menjelaskan jenis data apa saja yang kita inputkan
ke dalam variabel menggunakan pemahaman komputer.
Sama halnya dengan variabel pada bahasa pemrograman python, dimana
tipe data tidak perlu dideklarasikan secara eksplisit. Kita cukup memasukk
25
an nilai yang diinginkan maka kemudian dengan otomatis python akan tah
u data apa yang telah diinputkan tadi.
Sebagai contoh
Ketika kita memasukkan bilangan 5 ke dalam sebuah variabel, maka deng
an otomatis python langsung menentukan bahwa data yang kita inputkan t
adi merupakan data bertipe bilangan bulat yang dalam pemahaman komp
uter adalah tipe data integer. Kemudian bila data yang diinputkan adalah
5.5 yang merupakan bilangan desimal, maka itu adalah tipe data float. Lal
u bila data yang dimasukan merupakan nama kita (berupa teks) maka ke
mudian komputer akan membacanya sebagai tipe data string, dan sebag
ainya.
Integer
Digunakan untuk bilangan bulat. Panjang data dari tipe integer sebesar m
emori yang tersedia.
26
Selain integer, Python memiliki satu lagi tipe data numerik yaitu long (long
integer). Tipe data long integer hanya dapat digunakan hingga versi terakh
ir dari python 2 (python 2.7). Setelahnya pada python versi 3 ke atas, tipe
data ini sudah tidak bisa digunakan.
Float
Tipe data float digunakan untuk bilangan pecahan atau riil (real). Panjang
dari float dibatasi hanya 17 angka dibelakang titik. Karena standar bahasa
pemrograman menggunakan standar bahasa inggris maka untuk memisah
kan bilangan desimal bukan menggunakan tanda koma, melainkan tanda t
itik.
Complex
27
2. Tipe Data Teks (String)
Syarat menggunakan tipe data String, yaitu harus diawali dan diakhiri den
gan tanda petik. Dapat menggunakan petik satu (‘...’) atau juga tanda petik
dua (“...”). Setiap karakter, baik itu simbol atau angka, jika terletak diantara
kedua tanda petik maka tipe datanya sudah menjadi String.
3. Boolean
Boolean adalah tipe data yang hanya berisi nilai Benar atau Salah. Penuli
sannya menggunakan bahasa inggris dengan huruf kapital di awal (True/F
alse) tanpa tanda petik.
28
4. Tipe Data Berurut (String, List, dan Tuple)
Selain menjadi tipe data yang mewakili teks, String sebenarnya juga meru
pakan tipe data berurut. Setiap satu karakter atau serangkaian karakter pa
da String yang terletak diantara tanda kutip memiliki indeksnya masing-ma
sing yang tersusun secara urut. Indeks pada String dimulai dari indeks 0. I
stilah indeks sendiri merujuk kepada angka yang mewakili setiap karakter
atau anggota atau elemen dalam daftar sebuah tipe data berurut.
29
Pada kode di atas, variabel siswa berisi nilai String “budi”. Kemudian dari
String “budi” tersebut kita ambil satu persatu indeksnya yang dimulai dari
nol, untuk karakter di posisi pertama, dan seterusnya.
Selain itu kita juga dapat mengakses karakter string dengan menggunaka
n Teknik slicing yaitu dengan mengakses sejumlah karakter string dimulai
dari indeks tertentu sampai indeks tertentu. Rumusnya yaitu nama_variab
el[indeks_awal:indeks_akhir].
Contoh mendapatkan karakter kopi dari kata kopidingin.
30
Kata ‘kopi’ dari ‘kopidingin’ berada diantara indeks [0-4]. Maka, kita langsu
ng tulis saja sesuai rumus web [0:4] atau bisa seperti cara di atas tanpa a
ngka 0 web [4]. Namun perlu dicatat bahwa cara seperti ini [:4] hanya berl
aku jika indeks awal yang diminta dari 0.
List
List merupakan tipe data berurut karena setiap anggotanya memiliki indek
s yang tersusun secara urut dimulai dari 0. List bersifat mutable yang artin
ya data didalamnya bisa diubah. Anggota list bisa terdiri dari tipe data lain
seperti tipe data numerik, string, boolean bahkan campuran ketiganya. Ca
ra untuk membentuk list adalah dengan menggunakan tanda kurung siku
diawal dan diakhir, dengan setiap anggota didalamnya dipisahkan mengg
unakan tanda koma.
Teknik slicing juga dapat diterapkan pada tipe data list ini.
31
Tuple
Sama seperti pada tipe data list, hanya saja yang membedakan adalah jik
a list dimulai dan diakhiri dengan kurung siku, maka pada tipe data tuple di
gunakan kurung biasa. Perbedaan selanjutnya terdapat pada sifatnya, tupl
e bersifat immutable artinya data yang dikandungnya tidak bisa diubah. C
ara mengakses anggota tuple sama seperti pada list dan string tadi.
Set termasuk ke dalam tipe data yang tidak berurut karena pada tipe data
set tidak mengenal indeks dan anggota di dalamnya hanya berisi data ata
32
u nilai yang unik. Unik disini karena jika terdapat nilai yang sama atau dupl
ikasi maka set akan menghapus salah satu nilai duplikat tersebut, sehingg
a hanya ada satu jenis nilai saja.
Cara mendeklarasikan set yaitu dengan menggunakan kurung kurawal.
Perhatikan output dari tipe data set di atas, terlihat posisi anggota di dala
mnya ketika ditampilkan tidak dapat dipastikan urutannya, hal itu karena ti
pe data set tidak memiliki indeks. Selanjutnya, ketika dimasukkan anggota
tambahan yang bernilai sama (5 dan “budi”) maka kedua anggota tersebut
dengan otomatis akan dihapus.
6. Dictionary
Tipe data terakhir yaitu Dictionary, merupakan tipe data yang konsepnya s
ama dengan array asosiatif dalam bahasa pemrograman PHP, anggotany
a diwakili dengan pasangan kunci dan nilai (key:value). Key bisa bertindak
sebagai indeks, bedanya dengan indeks pada umumnya, nilai key bisa ber
upa tipe data numerik, teks, ataupun boolean. Sedangkan untuk value bis
a berupa tipe data apa saja. Jadi untuk mengakses value-nya kita perlu da
patkan key-nya. Untuk membentuk dictionary gunakan kurung kurawal.
33
Untuk mengakses value-nya.
34
Memasukkan Data dengan input ()
35
Konversi Tipe Data dalam input()
Konversi tipe data dalam input() berfungsi untuk mengganti masukan beru
pa String menjadi Integer.
Ketika data dalam fungsi input() akan dikonversi ke integer seperti contoh
di atas, maka yang dimasukan harus berupa bilangan bulat.
36
Fungsi print() juga dapat menginformasikan pada kita versi python yang di
gunakan pada suatu program. Jika kita menemukan program dengan dekl
arasi print() di dalamnya maka dapat dipastikan program tersebut sudah
menggunakan versi python 3 ke atas. Sedangkan jika di dalam program te
rsebut ditemukan deklarasi print tanpa tanda kurung, maka dapat progra
m tersebut menggunakan python versi lama. Python 2.7 ke bawah.
BAB III
37
OPERATOR
OPERATOR LOGIKA
Pengertian Operator Logika
Operator logika pada python adalah operasi logika matematika
untuk melakukan operasi komputasi dari data boolean, yang ter
diri dari True dan False. True bernilai benar dan False bernilai s
alah.
Operator logika terdiri dari:
1) Operator AND
38
2) Operator OR
OR Operand 1 Operand 2
True True True
True True False
True False True
False False False
Contoh dan Hasil dari
Operator OR :
39
3) Operator NOT
OPERATOR ARITMATIKA
Pengertian Operator Aritmatika
Operator aritmatika adalah operator yang biasa kita temukan un
tuk operasi matematika. Aritmatika sendiri merupakan cabang il
mu matematika yang membahas perhitungan sederhana,
40
Operator Contoh Penjelasan
Menjumlahkan nilai dari masing-masing ope
Penjumlahan + 1+3=4
ran atau bilangan
Mengurang operan di sebelah kiri menggun
Pengurangan - 4-1=3
akan operan di sebelah kanan
Perkalian * 2*4=8 Mengalikan operan/bilangan
Untuk membagi operan di sebelah kirim eng
Pembagian / 10 / 5 = 2
gunakan operan di sebelah kanan
Mendapatkan sisa pembagian dari operan di
Modulus % 11 % 2 = 1 sebelah kiri operator ketika dibagi oleh opera
n di sebelah kanan
Memangkatkan operan disebelah kiri operat
Pangkat ** 8 ** 2 = 64
or dengan operan di sebelahkanan operator
PembagianBulat / Sama seperti pembagian. Hanya saja angka
10 // 3 = 3
/ dibelakang koma dihilangkan
41
Contoh dan Hasil Operator Pembagian :
OPERATOR PENUGASAN
Operator penugasan digunakan untuk memberikan nilai kepada var
iable.
Contoh :
42
angka = 10
Artinya variable angka diberikan tugas untuk menyimpan nilai 10.
angka += 2
Artinyaadalahvariabelangka yang bernilai 10 akanditambahkandengan
nilai 2. Atauartinya
nilai = nilai + 2
Hal ini juga berlakudenganoperasipenugasan yang lain
43
angka /= 2 artinya( angka = angka / 2 )
angka **= 2 artinya( angka = angka ** 2 )
angka %= 2 artinya( angka = angka % 2 )
Contohpenggunaan operator penugasan di python
44
Operator penugasandigunakanuntukmemberikanataumemodifikasinilai
Memberikannilaivariabeldengannilaivari
Kurang sama deng
a -= 2 abelitusendiridikurangidengannilai di se
an -=
belahkanan.
45
OPERATOR PERBANDINGAN
Operator perbandingan digunakan untuk membandingkan 2 buah ni
lai. Hasil yang dikeluarkan adalah True atau False
Conto
Operator Penjelasan
h
46
Conto
Operator Penjelasan
h
au True.
47
s bilangan yang hanya terdiri dari 2 jenis angka, yaitu 0 dan 1. Diba
wah ini operator yang ada pada operator bitwise.
1010 & 1
& And 10 & 9 1000 8
001
1010 | 10
| Or 10 | 9 1011 11
01
1010 ^ 1
^ Xor 10 ^ 9 0011 3
001
1010 <<
<< Left shift 10 << 1 10100 20
1
O pera
to r bit
w ise
a dala
h oper
a si &
(An
d) terh
a dap
k edu
a vari
48
abel. Operasi bitwise “and” ini akan memproses bit per bit dari kedu
a variabel, jika kedua bit sama-sama 1, maka hasilnya juga 1, selai
n kondisi tersebut, nilai akhirnyaa dalah 0.
Contoh Perhitungan BItwise “AND” :
x = 1010
y = 1001
---------
x & y = 1000 = 8 (desimal)
Operasi ~ atau not, yang akan membalikkan nilai bit sebuah variabl
e dari 0 menjadi 1, dan 1 menjadi nol.
49
x = 1010
--------
~x = 0101 = -10 -1 = -11 (desimal)
Operator left shift “<<” dimana nilai variabel x akan digeser sebanya
k1 digit kekiri.
Contoh Perhitungan Bitwise “Left Shift”
x = 1010 = 10
x << 1 = 10100 = 20 (desimal)
Ketika hasil pergeseran kekiri, digit paling kanan akan di isi angka 0.
Setiap penggeseran 1 tempat kekiri akan mengkali 2 nilai asal. Kar
ena variabel x berisi desimal 10, maka hasil dari<< 1 sama dengan
10 * 2 = 20
OPERATOR IDENTITAS
Pengertian Operator Identitas
Opertor Identitas adalah operator yang bisa dipakai untuk m
emeriksa apakah nilai sebuah variable ada di tempat yang s
ama (di memory) atau tidak. Operator ini di kenal juga sebag
ai Identity Operators.Operator ini terdiri dari 2 jenis :
Operator Penjelasan
50
Is Bernilai True jika kedua Ope
rand merujuk ke Object yang
sama dan berisi yang sama
Is not Bernilai True Jika kedua Op
erand merujuk ke Object yan
g tidak sama
Hasil kodeProgram :
51
Untuk tipe data dasar seperti number atau string, jika dua buah variable b
erisi nilai yang sama, maka operator Is akan menghasilkan nilai True.
Namun dalam contoh terakhir, variabel x dan y berisi tipe data list. Meskip
un nilai element-nya sama persis, tapi Python menyimpannya di alamat m
emory yang berbeda, sehingga di anggap tidak identic. Hasilnya, x is y ad
alah false.
OPERATOR KEANGGOTAAN
Pengertian Operator Keanggotan
Operator Keangotaan adalah operator yang dipakai untuk memerik
sa apakah suatu nilai ada di dalam sebuah himpunan atau tidak. Hi
mpunan yang di maksud terdiri dari tipe data “Berbentuk array” sep
erti string, list, tuple, set dan dictionary. Operator ini dikenal juga se
bagai membership operators.Operator ini terdiri dari 2 jenis :
Operator Penjelasan
In Bernilai True Jika nilai yang d
i cari ada di dalam himpunan
Not in Bernilai True Jika nilai yang d
i cari tidak ada dalam himpun
an
52
Hasil Kode Program :
53
Operator In menyederhanakan proses pencarian sebuah nilai di dalam hi
mpunan atau array. Dalam bahasa Pemrograman lain, ini bisa di lakukan
dengan fungsi tambahan atau di buat manual menggunakan Perulangan.
Hasil operasi dari operator keanggotaan ini akan menghasilkan nilai deng
an tipe data Boolean yaitu memiliki dua nilai true dan false.
BAB IV
PERCABANGAN
Pengertian Percabangan
Percabangan adalah cara yang digunakan untuk mengambil keputusa
n apabila di dalam program dihadapkan pada kondisi tertentu. Jumlah
kondisinya bisa satu, dua atau lebih.
Percabangan mengevaluasi kondisi atau ekspresi yang hasilnya bena
r atau salah Kondisi atau ekspresi tersebut disebut ekspresi boolean.
Hasil dari pengecekan kondisi adalah True atau False. Bila benar (Tru
e), maka pernyataan yang ada di dalam blok kondisi tersebut akan die
ksekusi. Bila salah (False), maka blok pernyataan lain yang dieksekus
i.
Di Python ada 3 jenis pernyataan yang digunakan untuk percabangan,
yaitu sebagai berikut:
54
No Pernyataan Deskripsi
if tes kondisi:
blok pernyataan if
55
Syntax dari perintah if adalah
Outputnya :
56
Umur Kamu Berapa? 18
Yeah, Kamu Boleh Main Tiktok ! :)
Process returned 0 (0x0) executing time : 4.349 s
Tetapi jika umur yang dimasukan ke variabel UMUR = 12, maka tidak
memberikan hasil apa-apa.
Outputnya :
Umur Kamu Berapa? 12
Process returned 0 (0x0) executing time : 2.048 s
Pernyataan if...else
Pernyataan if…else menguji 2 kondisi. Kondisi pertama kalau benar, d
an kondisi kedua kalau salah. Sintaksnya adalah seperti berikut:
if tes kondisi:
blok pernyataan if
else:
blok pernyataan else
57
2.1 Pernyataan if....else...if
Pernyataan if…elif…else digunakan untuk menguji lebih dari 2 kondis
i. Bila kondisi pada if benar, maka pernyataan di dalamnya yang diek
58
sekusi. Bila salah, maka masuk ke pengujian kondisi elif. Terakhir bil
a tidak ada if atau elif yang benar, maka yang dijalankan adalah yang
di blok else. Sintaksnya adalah seperti berikut:
if tes kondisi:
blok pernyataan if
elif tes kondisi:
blok pernyataan elif
else:
blok pernyataan else
59
60
BAB V
PERULANGAN
Definisi Perulangan
Secara umum, Python mengeksekusi program baris perbaris. Mulai
dari baris satu, dua, dan seterusnya. Ada kalanya, kita perlu
mengeksekusi satu baris atau satu blok kode program beberapa kali. Hal
ini disebut dengan perulangan atau biasa disebut looping atau iterasi.
Untuk lebih jelasnya perhatikan gambar berikut:
Pada gambar bisa dilihat bahwa perulangan juga memerlukan tes kondisi.
Bila hasil tes kondisi True, maka blok kode kembali dieksekusi. Tapi jika
False, maka keluar dari perulangan.
2. Metode Perulangan
Didalam python, perulangan bisa dilakukan dengan dua cara atau metode,
yaitu:
a. Menggunakan for
b. Menggunakan while
61
a. Perulangan Menggunakan For
Perulangan dengan menggunakan for memiliki sintaks seperti
berikut:
for var in sequence:
body of for
var adalah variabel yang digunakan untuk penampung sementara
nilai dari sequence pada saat terjadi perulangan. Sequence adalah
tipe data berurut seperti string, list, dan tuple. Perulangan terjadi
sampai looping mencapai elemen atau anggota terakhir dari
sequence. Bila loop sudah sampai ke elemen terakhir dari
sequence, maka program akan keluar dari looping. Contoh :
Hasil Running :
62
b. Fungsi Range
Fungsi range() dapat digunakan untuk menghasilkan deret
bilangan. range(10) akan menghasilkan bilangan dari 0 sampai
dengan 9 (10 bilangan). Kita juga bisa menentukan batas bawah,
batas atas, dan interval dengan format range (batas bawah, batas
atas, interval). Bila interval dikosongkan, maka nilai default 1 yang
akan digunakan. Fungsi range() merupakan fungsi yang menghasil
kan list. Fungsi ini akan menciptakan sebuah list baru dengan renta
ng nilai tertentu. Contoh:
1. list dari 0 sampai 10
range(10)
akan menghasilkan:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
2. list dari 4 sampai 12
range(4, 12)
akan menghasilkan:
[4, 5, 6, 7, 8, 9, 10, 11]
3. list dari 10 sampai 50 dengan interval 5
range(10,50,5)
akan menghasilkan:
[10, 15, 20, 25, 30, 35, 40, 45]
Dari contoh-contoh di atas, dapat kita pahami arti parameter yang d
iberikan untuk fungsi ini. Parameter pertama adalah batas bawah; p
arameter kedua adalah batas atas; dan parameter ketiga adalah nil
ai interval.
range (batas bawah, batas atas, interval)
63
for nomer in range(10):
print “petani-” + str(nomer)
akan menghasilkan:
petani-0
petani-1
petani-2
petani-3
petani-4
petani-5
petani-6
petani-7
petani-8
petani-9
Jadi, itulah beberapa manfaat dan cara menggunakan fungsi range
(). Range dengan satu parameter akan menghasilkan list dengan re
ntang parameter itu. Sedangkan range dengan dua parameter akan
menghasilkan list dengan rentang dari parameter pertama sampai p
arameter kedua. Kemudian, range yang menggunakan tiga paramet
er akan menghasilkan list dengan rentang dari parameter pertama s
ampai parameter kedua dengan jarak interval parameter ketiga.
64
Algoritma while untuk menampilkan angka 1 hingga 15
Algoritma Perulangan_while
{mencetak angka 1 hingga 15}
Deklarasi
angka =1
Deskripsi
while angka <= 15:
cetak angka
angka angka + 1
65
Bilangan ke-: 7
Bilangan ke-: 8
Bilangan ke-: 9
Bilangan ke-: 10
Bilangan ke-: 11
Bilangan ke-: 12
Bilangan ke-: 13
Bilangan ke-: 14
Bilangan ke-: 15
Terima Kasih
66
9
8
7
6
5
4
3
2
1
Hasil Mencetak Bilangan Secara menurun.
67
Perintah Break:
Berfungsi untuk keluar dari suatu loop for atau while.
Bentuk Umumnya adalah:
......
......
break
......
...…
68
Program keluar setelah mencetak angka 6 karena instruksi br
eak
Perintah Continue:
Fungsi Continue akan melakukan pengulangan mulai dari awa
l lagi.
Contoh :
Hasil Running :
3. Infinite Loop
69
Sebuah kondisi dimana loop selalu benar dan tidak pernah salah
disebut loop tidak terbatas (infinite loop). Terkadang hal ini menjadi
masalah. Tapi sering juga infinite loop berguna, misalnya untuk program
client/server dimana server perlu menjaga komunikasi tetap hidup dan
tidak terputus.
For Loop
Seperti pada bahasa pemrograman lainnya, for loop sudah menjadi stand
ar namun berbeda-beda tata cara penulisan nya di setiap pemrograman.
Sekarang kita langsung buat contoh di Python.
#Contoh iterasi pada String
for n in 'Python': print 'Huruf :', n
70
for x in range(11,20): b=a*x
print "Angka :", b
#loop dgn break
for letter in 'Python': if letter == 'h': break print 'Current Letter :', lett
er
print "Good job !!!"
While Loop
While dipakai untuk looping dimana iterasi akan dilakukan selama kondisi
yang diberikan benar. While ini juga bisa di pakai untuk Infinite loop.
#Contoh Whilecount = 0
while count < 100:
print "Count ke : ", count
count = count + 1
#infinite loop
'''Set loop ini untuk kondisi dimana suatu syarat tidak pernah TRUE'''
setvar =1
while setvar == 1
input = input_raw("Masukan angka :")
print "Angka anda : ", input
#loop diatas akan berhenti jika anda stop manual misal dgn CTRL+C di
terminal'''
ELSE statement di while loop. di Python kita bisa set WHile loop lalu
dikasih kondisi'''
count = 0
while count < 5:
print "count : ",count count = count + 1
else:
print "Lihat yang masuk sini apa : ",count
#while dgn break
angka = 10
71
while angka > 0:
print 'Angka :', angka
angka = angka -1
if angka == 7:
break
4. Kendali Looping
Looping umumnya akan berhenti bila kondisi sudah bernilai salah.
Akan tetapi, seringkali kita perlu keluar dari looping di tengah jalan
tergantung keperluan. Hal ini bisa kita lakukan dengan menggunakan kata
kunci break dan continue.
Statement break memaksa program keluar dari blok looping di tengah
jalan. Sedangkan statement continue menyebabkan program langsung
melanjut ke step / interval berikutnya dan mengabaikan (skip) baris kode
di bawahnya (yang satu blok).
Contoh :
Hasil Running :
72
Bila pada program di atas kita ganti kode break menjadi continue, maka
hasilnya akan jadi seperti berikut:
Huruf sekarang: P
Huruf sekarang: r
Huruf sekarang: o
Huruf sekarang: r
Huruf sekarang: a
Huruf sekarang: m
Huruf sekarang: m
Huruf sekarang: i
Huruf sekarang: n
Good bye
Perhatikan bahwa huruf g tidak pernah ditampilkan karena diabaikan
karena kode continue.
5. While Else
Python mendukung penggunaan else sebagai pasangan dari while.
Blok pernyataan else hanya akan dieksekusi bila kondisi while bernilai sal
ah.
Contoh :
73
Hasil Running :
74
BAB VI
DAFTAR, LIST DAN TUPLE
75
PENGERTIAN DAFTAR/LIST
Dalam bahasa pemrograman seperti C atau C ++, array digunakan u
ntuk menampung elemen-elemen dari tipe data yang sama. Tetapi dalam
Daftar/List Python, semua elemen tidak harus dari waktu yang sama. Seti
ap item dalam daftar/list dipisahkan oleh koma. Semua elemen termasuk
di dalam tanda kurung siku.
Contoh daftar adalah list1 = [1, “abc”, 4.5]; Indeks daftar dimulai den
gan nol. Oleh karena itu, elemen 1 memiliki indeks 0, dan abc memiliki ind
eks 1 dst. Juga dimungkinkan untuk menggunakan indeks negatif. Elemen
terakhir dari daftar memiliki indeks -1. Kemudian elemen "abc" memiliki ind
eks -2 dst.
Dimungkinkan untuk mengambil urutan elemen dari daftar. Ini disebu
t mengiris. Ketika ada daftar sebagai berikut, yaitu list1 = ['a', 'b', 'c', 'd', 'e',
'f', 'g'], pernyataan dicetak (list1 [2: 5]) akan mencetak c, d, e. Elemen dala
m indeks dua dimasukkan tetapi bukan elemen dalam indeks lima.
Elemen-elemen dalam daftar dapat diubah. Asumsikan ada daftar se
bagai, list1 = [2,4,6,8]. Jika pemrogram ingin mengubah elemen pertama
menjadi nilai 1, maka ia dapat mengubahnya dengan menulis pernyataan l
ist1 [0] = 1. Bahasa python telah memiliki fungsi inbuilt untuk menambahk
an item baru ke daftar. Ini adalah fungsi append. Ketika ada daftar seperti
list1 = [1,2,3], programmer dapat menambahkan elemen baru 4 mengguna
kan list1.append (4).
List Python merespon operator + dan * seperti string ; itu artinya pen
ggabungan dan pengulngan disini juga berlaku, kecuali hasilnya adalah lis
t baru, bukan string.
Item dalam list ditutup menggunakan kurung siku [] (list literal). Setel
ah list dibuat anda bisa menambah, mengurangi dan mencari item pada lis
t. Karena kita dapat menambah dan mengurangi item, list bersifat Mutable .
List contoh penggunaan Obyek dan Class. Ketika kita menggunakan vari
able i dan mengsinya dengan nilai integer 5, sama dengan kita membuat o
byek (intance) i dari class (tipe) int. Anda dapat membaca help(int) untuk
membaca dokumentasi class integer.
76
Class mempunyai method, fungsi yang didefinisikan dalam class. An
da bisa menggunakan method ini pada obyek class tersebut. Sebagai cont
oh phyton menggunakan method append untuk class list. contoh_list.app
end('item 1') akan menambahkan string 'item 1' kendala list contoh_list. P
erhatikan notassi titik untuk mengakses method obyek. Class juga mempu
nyai field yang sama halnya variable yang digunakan untuk class. Anda bi
sa menggunakan Variable/nama ini pada obyek class tersebut.
77
Kemudian bagaimana dengan mengaksesnya? Begini caranya, jika kalian i
ngin mengambil item/data pertama, gunakan indeks 0.
Seperti ini:
Contoh_list = [‘string’,1,2,3.1]
Contoh_list[0] # outputnya ‘string’
Atau untuk mempermudahnya, saya akan menunjukkan semuanya:
Dan properti menariknya lagi, bahwa list dapat diubah, bisa ditambahkan at
au dikurangkan mengunakan .append( ) dan .pop( ). Atau istilah yang seri
ng digunakan mutable.
78
79
PENGERTIAN TUPLE
Sebuah tuple mirip dengan daftar. Setiap item dalam daftar dipisahka
n oleh koma. Semua elemen termasuk dalam kurung. Sebuah tuple dapat
memiliki jenis elemen yang berbeda. Setiap elemen dipisahkan oleh koma.
Contoh tuple adalah tuple1 = (1,2,3). Elemen pertama memiliki indeks 0.
Elemen kedua memiliki indeks 1 dan seterusnya. Tuple juga dapat memili
ki indeks negatif. Jadi, nilai 3 memiliki indeks -1. Nilai 2 gas indeks -2 dan
seterusnya.
Programmer dapat mengambil urutan elemen dalam tuple. Asumsika
n ada tuple, tuple1 = (1,2,3,4,5). Cetak pernyataan (list1 [2: 5]) akan menc
etak 3,4. Elemen dalam indeks dua dimasukkan tetapi bukan elemen dala
m indeks lima.
Tuples tidak bisa berubah. Karenanya, elemen-elemen dalam daftar t
idak dapat diubah. Mengubah elemen akan memberikan kesalahan. Tetap
i jika elemen adalah tipe data yang bisa berubah, maka item yang bersara
ngnya dapat diubah. Asumsikan ada tuple sebagai tuple1 = (1,2, [3,4]). Ba
hkan ini adalah tuple, elemen dalam indeks 2 memiliki daftar. Untuk meng
ubah elemen 1 dalam daftar itu menjadi 5, pernyataan tuple1 [2] [0] = 5 da
pat digunakan. Karena tuple tidak dapat diubah, elemen-elemen tidak dap
at dihapus. Tetapi menggunakan fungsi del, seluruh tuple dapat dihapus.
misalnya del (tuple1).
Ada fungsi-fungsi yang disediakan oleh Python untuk operasi berbasi
s tuple. Fungsi len () membantu untuk menemukan jumlah elemen dalam
sebuah tuple. Fungsi max dan min dapat digunakan untuk menemukan nil
ai maksimum dan nilai minimum tuple. Mengimplementasikan tuple adalah
proses yang mudah membandingkan dengan array dalam bahasa pemrog
raman lain seperti C / C ++.
Sedangkan untuk membuat tuple juga cukup mudah, kita hanya perlu
menuliskan datanya ke dalam tanda kurung ( ).
Contoh_tuple = (1,2,3,’a’)
Cara mengakses datanya, punya cara yang sama dengan list.
80
Di sini bedanya tuple dengan list, tuple tidak bisa ditambahkan atau d
ikurangi. Sekalinya dibuat, maka dia tidak dapat diganti sama sekali. Atau i
stilah yang sering digunakan immutable.
Membuat tuple semudah memasukkan nilai-nilai yang dipisahkan ko
ma. Secara opsional, Anda dapat memasukkan nilai-nilai yang dipisahkan
koma ini di antara tanda kurung juga. Sebagai contoh :
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 : tup
1 = (50,) Seperti indeks String, indeks tuple mulai dari 0, dan mereka dapa
t diiris, digabungkan, dan seterusnya.
81
Untuk mengakses nilai dalam tupel, gunakan tanda kurung siku untu
k mengiris beserta indeks atau indeks untuk mendapatkan nilai yang terse
dia pada indeks tersebut. Sebagai contoh :
Tuple tidak berubah, yang berarti Anda tidak dapat memperbarui atau me
ngubah nilai elemen tupel. Anda dapat 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;
82
tup = ('fisika', 'kimia', 1993, 2017);
print (tup)
del tup;
print "Setelah menghapus tuple : "
print tup
83
KESAMAAN ANTARA DAFTAR/LIST DAN TUPLE
Daftar dan Tuple digunakan untuk menyimpan satu set elemen dala
m Python. Indeks daftar dan tupel dimulai dengan nol. Setiap elemen dipis
ahkan oleh koma di Daftar dan Tuple. Daftar dan Tuple dapat memiliki ber
bagai jenis elemen. Daftar ini dapat berisi daftar bersarang dan tupel dapa
t berisi nested tuple. Daftar dan Tuple mendukung pengindeksan negatif.
84
BAB VII
STRING dan BILANGAN
STRING
a. Pengertian String
String adalah tipe data yang paling sering digunakan di Python. Kita
bisa membuat string dengan meletakkan karakter di dalam tanda ku
tip. Tanda kutipnya bisa kutip tunggal maupun kutip ganda. Contoh
nya adalah sebagai berikut:
var1 = 'Hello Python'
var2 = 'Programming with Python'
c. Mengupdate String
String adalah tipe data immutable, artinya tidak bisa diubah. Untuk
mengupdate string, kita perlu memberikan nilai variabel string lama
ke string yang baru. Nilai yang baru adalah nilai string lama yang su
dah di update.
var1 = 'Hello Python!'
var2 = var1[:6]
print("String Update: - ", var1[:6] + 'World')
d. Menggabung String
85
Kita bisa menggabungkan dua atau lebih string menjadi satu denga
n menggunakan operator +. Selain itu kita juga bisa melipatgandak
an string menggunakan operator *.
KARAKTER ESCAPE
Kalau kita hendak mencetak string: He said, "What's there?" kita tidak b
isa menggunakan tanda kutip tunggal maupun ganda. Bila kita melakuk
annya, akan muncul pesan error SyntaxError karena teks berisi kutip tu
nggal dan ganda.
>>> print("He said, "What's there?"")
...
SyntaxError: invalid syntax
>>> print('He said, "What's there?"')
...
SyntaxError: invalid syntax
86
Untuk hal seperti ini kita bisa menggunakan tanda kutip tiga atau meng
gunakan karakter escape. Karakter escape dimulai dengan tanda backs
lash \. Interpreter
akan menerjemahkannya dengan cara berbeda dengan string biasa.
87
Terdapat dua cara melakukan format pada string. Pertama dengan men
ggunakan fungsi format(), dan kedua dengan menggunakan cara lama
(menggunakan %).
88
'|beras | gula | garam|'
>>> nama = 'Budi'
>>> print('Nama saya %s' %s) Nama saya Budi
>>> x = 12.3456789
>>> print('Nilai x = %3.2f' %x) Nilai x = 12.35
>>> print('Nilai x = %3.4f' %x) Nilai x = 12.3456
1. BILANGAN
2.1 Bilangan (Number)
Bilangan (number) adalah salah satu tipe data dasar di Python. Pyt
hon mendukung bilangan bulat (integer), bilangan pecahan (float), dan
bilangan kompleks (complex). Masing – masing diwakili oleh kelas int,
float, dan complex. Integer adalah bilangan bulat, yaitu bilangan yang
tidak mempunyai koma.
Contohnya 1, 2, 100, -30, -5, 99999, dan lain sebagainya. Panjang int
eger di python tidak dibatasi jumlah digitnya. Selama memori masih cu
kup, maka sepanjang itulah jumlah digit yang akan ditampilkan.
89
2.2 Konversi Jenis Bilangan
Kita bisa mengubah jenis bilangan dari int ke float, atau sebaliknya.
Mengubah bilangan integer ke float bisa menggunakan fungsi int(num)
dimana num adalah bilangan float.
>>> int(2.5)
2
>>> int(3.8) 3
>>> float(5) 5.0
Pada saat kita mengubah float ke integer, bilangan dibulatkan ke ba
wah. Sebaliknya saat kita mengubah integer ke float, maka bilangan b
ulat akan menjadi bilangan berkoma.
90
2.4 Bilangan Pecahan
Python menyediakan modul fractions untuk mengoperasikan b
ilangan pecahan. Pecahan adalah bilangan yang memiliki pembilang d
an penyebut, misalnya 3/2. Perhatikan contoh berikut:
Matematika dengan Python
Python menyediakan modul math melakukan hal yang berbau matem
atis seperti trigonometri, logaritma, probabilitas, statistik, dan lain – lai
n.
91
92
BAB VIII
FUNGSI
if
Pengertian Fungsi
Fungsi adalah grup/blok program untuk melakukan tugas tertentu y
ang berulang. Fungsi membuat kode program menjadi reusable, artiny
a hanya di definisikan sekali saja, dan kemudian bisa digunakan berul
ang kali dari tempat lain di dalam program.
Fungsi memecah keseluruhan program menjadi bagian – bagian ya
ng lebih kecil .Dengan semakin besarnya program, maka fungsi akan
membuatnya menjadi lebih mudah diorganisir dan di manage.
Sejauh ini, kita sudah menggunakan beberapa fungsi, misalnya fun
gsi print(), type(), dan sebagainya. Fungsi tersebut adalah fungsi baw
aan dari Python. Kita bisa membuat fungsi kita sendiri sesuai kebutuh
an.
Mendefinisikan Fungsi
Berikut adalah sintaks yang digunakan untuk membuat fungsi:
def function_name(parameters):
“””function_docstring”””
statement(s)
return [expression]
Sumber :
YUDANA (2016)
93
3. “function_docstring” bersifat opsional, yaitu sebagai string yang dig
unakan untuk dokumentasi atau penjelasan fungsi. “function_doctri
ng” diletakkan paling atas setelah baris def.
4. Setelah itu diletakkan baris – baris pernyataan (statements). Janga
n lupa indentasi untuk menandai blok fungsi.
5. return bersifat opsional. Gunanya adalah untuk mengembalikan sua
tu nilai expression dari fungsi.
Berikut adalah contoh fungsi untuk menyapa seseorang:
Sumber : dok.pribadi
Memanggil Fungsi
Bila fungsi sudah didefinisikan, maka ia sudah dapat dipanggil dari te
mpat lain di dalam program. Untuk memanggil fungsi caranya adalah
dengan mengetikkan nama fungsi berikut paramaternya.
Untuk fungsi di atas, kita bisa melakukannya seperti contoh berikut:
>>> sapa(‘Galih’)
Hi, Galih. Apa kabar?
>>> sapa(‘Ratna’)
Hi, Ratna. Apa kabar?
94
Sumber :
YUDANA (2016)
Docstring
Docstring adalah singkatan dari documentation string. Ini berfungsi se
bagai dokumentasi atau keterangan singkat tentang fungsi yang kita b
uat. Meskipun bersifat opsional, menuliskan docstring adalah kebiasa
an yang baik.
Untuk contoh kita menuliskan docstring. Cara mengaksesnya adalah
dengan menggunakan format namafungsi.__doc__
>>> print(sapa.__doc__)
“””Fungsi ini untuk menyapa seseorang sesuai nama yang
dimasukkan sebagai parameter”””
Contoh:
Hasil:
Sumber : dok.pribadi
return [expression_list]
Sumber :
YUDANA (2016)
95
return bisa berisi satu atau beberapa ekspresi atau nilai yang dievalua
si dan nilai tersebut akan dikembalikan. Bila tidak ada pernyataan retu
rn yang dibuat atau ekspresi dikosongkan, maka fungsi akan mengem
balikan objek None.
Perhatikan bila hasil keluaran dari fungsi sapa kita simpan dalam varia
bel.
Sumber :
YUDANA (2016)
Contoh: Hasil:
Sumber : dok.pribadi
Argumen Fungsi
Kita bisa memanggil fungsi dengan menggunakan salah satu dari emp
at jenis argumen berikut:
1. Argumen wajib (required argument)
2. Argumen kata kunci (keyword argument)
3. Argumen default
4. Argumen dengan panjang sembarang
a. Argumen Wajib
Argumen wajib adalah argumen yang dilewatkan ke dalam fungsi d
engan urutan posisi yang benar. Di sini, jumlah argumen pada saat
96
pemanggilan fungsi harus sama persis dengan jumlah argumen pa
da pendefinisian fungsi.
Pada contoh fungsi sapa() di atas, kita perlu melewatkan satu argu
men ke dalam fungsi sapa(). Bila tidak, maka akan muncul error.
>>> sapa(‘Umar’)
Hi Umar. Apa kabar?
>>> # akan muncul error
>>> sapa()
Traceback (most recent call last):
File “<pyshell#5>”, line 1, in <module>
sapa()
TypeError: sapa() missing 1 required positional argument: ‘nama’
Sumber :
YUDANA (2016)
b. Argumen Kata Kunci
Argumen dengan kata kunci berkaitan dengan cara pemanggilan fu
ngsi. Ketika menggunakan argumen dengan kata kunci, fungsi pem
anggil menentukan argumen dari nama parameternya. Hal ini mem
buat kita bisa mengabaikan argumen atau menempatkannya denga
n sembarang urutan.
Python dapat menggunakan kata kunci yang disediakan untuk men
cocokkan nilai sesuai dengan parameternya. Jelasnya ada pada co
ntoh berikut:
97
Sumber : dok.pribadi
c. Argumen Default
Sumber : dok.pribadi
Sumber : dok.pribadi
98
d. Argumen Dengan Panjang Sembarang
Terkadang kita butuh untuk memproses fungsi yang memiliki banya
k argumen. Nama – nama argumennya tidak disebutkan saat pend
efinisian fungsi, beda halnya dengan fungsi dengan argumen wajib
dan argumen default.
Sintaksnya fungsi dengan argumen panjang sembarang adalah sep
erti berikut:
Sumber :
YUDANA (2016)
Hasil:
99
Sumber : dok.pribadi
Hasil:
Sumber : dok.pribadi
100
Perhatikan bagaimana variabel total di dalam dan di luar fungsi adalah
dua variabel yang berbeda.
101
BAB IX
Penanganan Eksepsi
Eksepsi terjadi ketika ada sesuatu yang tak terduga muncul dalam
program. Contoh pada saat program akan membaca suatu file namun file
tersebut tidak ada. Kondisi tersebut akan ditangani dengan exception. Pad
a saat menulis dan menjalankan program, kita sering dihadapkan pada m
unculnya kesalahan atau error. Seringkali error menyebabkan program be
rhenti sendiri.
Error dapat terjadi akibat kesalahan struktur (sintaks) program atau ketika
python memparsing program. Hal ini disebut syntax error atau parsing
error. Contohnya adalah seperti berikut:
>>> if x < 5
File "<stdin>", line 1
if x < 5
^
SyntaxError: invalid syntax
Kita bisa melihat bahwa penyebabnya adalah lupa titik dua pada pernyata
an if.
Error juga dapat terjadi pada saat runtime (saat program berjalan). Error s
eperti ini disebut eksepsi. Misalnya, bila kita membuka file yang tidak ada,
maka akan muncul pesan kesalahan FileNotFoundError. Bila kita membag
i bilangan dengan nol akan muncul ZeroDivisionError, dan lain sebagainya.
Pada saat terjadi eksepsi, Python akan menampilkan traceback dan detail
dimana kesalahan terjadi.
>>> 1/0
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ZeroDivisionError: division by zero
102
Tabel berikut menunjukkan semua eksepsi yang dimiliki Python
AttributeError Muncul pada saat penugasan terhadap attribute atau referensi gagal
FloatingPointErr
Muncul saat operasi terhadap bilangan float gagal
or
KeyboardInterru
Muncul saat user menekan tombol interupsi (Ctrl + C)
pt
NotImplemented
Muncul oleh metode abstrak
Error
OverflowError Muncul saat hasil operasi perhitungan terlalu besar untuk direpresentasikan
RuntimeError Muncul saat error yang terjadi di luar semua kategori eksepsi lain
TabError Muncul saat indentasi memiliki jumlah spasi atau tab yang tidak konsisten
103
SystemError Muncul saat interpreter mendeteksi kesalahan internal
TypeError Muncul saat melakukan operasi pada tipe data yang tidak sesuai
UnboundLocalE Muncul saat referensi dibuat untuk variabel lokal dari fungsi, tapi tidak ada nil
rror ainya.
Muncul saat terjadi kesalahan berkenaan dengan encoding dan decoding unic
UnicodeError
ode
UnicodeEncode
Muncul saat terjadi kesalahan pada proses encoding
Error
UnicodeDecode
Muncul saat terjadi kesalahan pada proses decoding
Error
UnicodeTranslat
Muncul saat terjadi kesalahan berkenaan dengan penerjemahan unicode
eError
ValueError Muncul saat fungsi menerima argumen yang tipe datanya salah
ZeroDivisionErr
Muncul saat terjadi operasi pembagian bilangan dengan nol
or
104
Python mengeluarkan eksepsi EOFError yang berarti menemukan symbol
end of file(ddirepresentasikan oleh cltr-d) ketika program berharap tidak
akan ada.
Di dalam blok try kita meletakkan baris program yang kemungkinan akan t
erjadi error. Bila terjadi error, maka penanganannya diserahkan kepada bl
ok except. Berikut adalah contoh penanganan eksepsi pada operasi pemba
gian bilangan.
try:
105
# lakukan sesuatu
pass
except ValueError:
# tangani eksepsi ValueError
pass
except:
# menangani eksepsi lainnya
pass
Mengeluarkan Exception
Kita dapat mengeluarkan eksepsi dengan menggunakan
pernyataan(statement) raise dengan menyediakan obyek eksepsi. Kita
dapat membuat eksepsi sendiri dengan membuat class turunan Exception
106
Memunculkan Eksepsi
Eksepsi muncul bila terjadi error pada saat runtime atau saat program berj
alan. Akan tetapi, kita juga bisa memunculkan eksepsi dengan sengaja un
tuk maksud tertentu dengan menggunakan kata kunci raise. Contohnya ad
alah seperti berikut:
Try…Finally
107
Pernyataan try bisa memiliki pasangan pernyataan finally. Pernyataan di d
alam blok finally akan tetap dieksekusi bagaimanapun kasusnya.
finally biasa digunakan untuk melepaskan koneksi dengan resource ekster
nal. Seperti misalnya saat kita sedang mengedit suatu file di internet dan ti
ba – tiba internet terputus. Atau saat kita login ke pusat data dan koneksi t
erputus.
Pada kasus tersebut, kita harus membersihkan resource yang digunakan,
terlepas ia sukses atau tidak. Aksi tersebut (menutup file, atau memutus k
oneksi ke jaringan) dilakukan dengan menggunakan pernyataan finally unt
uk menjamin suatu perintah tetap dieksekusi.
Berikut adalah contoh try…finally untuk mengoperasikan file.
try:
f = open("C:\\test.txt")
# melakukan operasi terhadap file
finally:
f.close()
finally menjamin bahwa file daftar akan tetap di tutup walaupun ada error p
ada saat operasi terhadap file.
Contoh lain ketika kita akan membaca file dari program yang kita buat.
Bagaimana kita memastikan file akan ditutup baik ada eksepsi maupun
tidak. Kita bisa menggunakan blok finally pada blok try.
Statement with
Mendapatkan resource pada blok try dan melepasnya pada blok finally
merupakan pola yang umum ditemukan. Oleh karena itu, kita dapat
108
menggunakan statement with yang menyediakan mekanisme diatas
secara otomatis.
109
DAFTAR PUSTAKA
Yudana (2016). BELAJAR MEMBUAT FUNGSI DI BAHASA
PEMROGRAMAN PYTHON
https://www.yudana.id/belajar-membuat-function-bahasa-pemrograman-
python/
Amadsuryadi.net
https://www.advernesia.com
https://www.duniailkom.com
https://ilmucoding.com/
belajarpython.com
www.petanikode.com/
https://nuricahyono.com
www.medium.com
https://www.pythonindo.com/,
110