Exception Handling jika diartikan secara bebas dapat disebut sebagai ‘teknik penanganan kasus khusus’. Exception handling pada kode program diperlukan saat kita perlu menyiasati adanya perintah yang gagal dieksekusi karena adanya kondisi yang tidak sesuai dengan kondisi yang diharapkan pada kasus normal.
Contoh sederhana kondisi tidak normal misalkan saat program mengharapkan input dari user berupa angka namun user/sistem memberikan nilai ataupun format yang tidak valid. Jika kasus khusus tersebut tidak diberikan penanganan khusus maka program dapat terhenti karena error.
Contoh kasus
Jalankan contoh kode di bawah, kemudian coba berikan nilai seharusnya (angka) dan bandingkan hasilnya dengan memberikan nilai yang tidak sesuai (misal: huruf).
Jika pada contoh di atas user memberikan nilai non angka saat diminta, maka program akan mengalami fatal error dan keluar sebelum baris kode berikutnya dijalankan .
Menambahkan exception handling
Untuk menangani kasus pada contoh di atas kita dapat memodifikasi kode dan menambahkan exception handling untuk mendeteksi terjadinya kesalahan. Dengan menambahkan exception handling, jikapun terjadi kesalahan program dapat tetap melanjutkan ke baris berikutnya.
Syntax exeption handling
try: # blok kode ini dieksekusi terlebih dahulu except: # eksekusi pindah ke blok except bila pada blok try terjadi error # eksekusi pindah tanpa melanjutkan sisa kode pada blok trySolusi untuk kasus sebelumnya
Jalankan contoh berikut untuk lebih jelasnya, berikan nilai yang yang sama seperti saat anda menghasilkan error pada contoh kode sebelumnya dan perhatikan hasilnya.
Contoh lain
Exception handling saat konversi datetime
Kode di bawah adalah contoh solusi saat user memasukkan tanggal dengan format yang salah.
from datetime import datetime as dtm tanggal_valid = False while not tanggal_valid: dt_input = input('Masukkan tanggal lahir anda dengan format seperti contoh berikut: 31-12-1995\n') try: tanggal_lahir = dtm.strptime(dt_input,'%d %m %Y') tanggal_valid = True except: print('Anda memasukkan nilai dengan format yang salah') print(tanggal_lahir)Semoga bermanfaat,
Salam
Nurul Huda 6 February 2021
- Beranda ›
- Python ›
- Python Dasar
- › Python Dasar: Pass - Cara Untuk Tidak Melakukan Apapun 🐍
- Python
- Python Dasar
Daftar Isi
- Apa itu pass?
- Sintaks pass
- Contoh pass
- Beberapa tempat untuk pass
- Kesimpulan
- Pertemuan Selanjutnya
Alhamdulillah.
Sejauh ini seri tutorial python dasar sudah hampir selesai. Kita telah mempelajari cukup banyak hal mulai dari tipe data, control-flow percabangan, control-flow perulangan, dan kita juga telah mempelajari hal-hal yang berkaitan dengan fungsi.
Pada pertemuan ini, kita akan membahas control-flow yang lain pada python: yaitu pass.
Apa itu pass?
Kata kunci pass adalah sebuah statemen pada python yang tidak memiliki tugas apa pun. Tidak menginstruksi sistem untuk melakukan satu hal pun. Ia ada, tapi keberadaannya seolah tidak ada.
Lalu, buat apa?
Statemen pass berguna sebagai placeholder untuk suatu fungsi atau suatu class yang belum kita implementasikan secara nyata.
Contoh: kita ingin membuat 3 buah fungsi tapi kita masih belum ingin menuliskan semua kode programnya, maka kita bisa memanfaatkan statemen pass.
Sintaks pass
Sintaks pass hanyalah pass.
Tidak ada lagi. Hanya itu saja.
Contoh pass
Contohnya, misal kita sedang membuat sebuah web dengan python. Web tersebut memiliki 3 buah halaman:
- Halaman Utama
- Tentang Kami
- Kontak
Maka, kita bisa langsung bikin saja 3 fungsi untuk masing-masing halaman, meskipun setelah itu kita hanya akan mengerjakan halaman utama lebih dulu –dan men-skip yang lainnya.
Contoh:
def halaman_utama (): pass def halaman_tentang_kami (): pass def halaman_kontak (): pass
Penjelasan
Pada kode program di atas, kita hanya mendefinisikan sebuah kerangka kerja yang kosong, dan belum berencana mengimplementasikan kodenya.
Interpreter python mengharuskan sebuah fungsi atau sebuah blok kode untuk memiliki statemen. Jika tidak, maka kita akan mendapatkan error.
Misal:
Jika kita jalankan kode program seperti di atas, kita akan mendapatkan error indentasi seperti berikut:
IndentationError: expected an indented block
Agar tidak error, kita bisa menuliskan statemen pass. Kemudian kita bisa melanjutkan bagian kode program yang lainnya dan men-skip bagian yang kita beri pass untuk kita kerjakan nanti-nanti.
Beberapa tempat untuk pass
Statemen pass bisa kita taruh dalam beberapa tempat, seperti:
Perulangan:
Kita juga bisa meletakkannya di dalam sebuah class:
Atau fungsi:
def hitung_luas_lingkaran(diameter): pass
If-else:
if 5 > 2: pass else: pass
Atau try-except:
try: luas = 10 * '20' except: pass
Dan lain sebagainya.
Kesimpulan
Banyak blok kode dalam python yang tidak bisa kita biarkan kosong. Kalau kita biarkan kosong interpreter python akan memberikan sebuah error.
Untuk mengatasinya, kita bisa meletakkan statemen pass sebagai badan blok kode.
Dengan begitu blok kode tersebut tetap tidak melakukan apa-apa, tapi juga tidak menyebabkan error.
Pertemuan Selanjutnya
Insyaallah pada pertemuan selanjutnya (yaitu pertemuan terakhir pada seri ini) kita akan membahas tentang perbedaan antara tipe data list, set, dan tuple.
Jadi, pastikan kalian tetap semangat dan tetap stay tune, ya! 😎
Terima kasih banyak.
Mengangkangi Python: Level 1
Ikuti Kursus Cara Paling Cepat Menguasai Bahasa Python.