Belajar Menangani Exception pada Python: Cara dan Contoh Penanganannya
Cara menangani exception dalam Python adalah dengan menggunakan blok try-except. Blok try-except digunakan untuk menangkap dan menangani exception yang mungkin terjadi saat menjalankan sebuah program.
Berikut adalah contoh penggunaan blok try-except untuk menangani exception TypeError:
try:
x = 10
y = "string"
z = x + y
print(z)
except TypeError:
print("Error: Cannot add integer and string")
Dalam contoh di atas, blok try-except berhasil menangkap exception TypeError dan mengeluarkan pesan error yang kita buat.
Selain menggunakan blok try-except, kita juga dapat menambahkan blok else dan finally pada penanganan exception. Blok else akan dieksekusi jika tidak ada exception yang terjadi pada blok try, sedangkan blok finally akan dieksekusi setelah blok try atau blok except selesai dieksekusi, terlepas dari apakah exception terjadi atau tidak.
Berikut adalah contoh penggunaan blok try-except-else-finally untuk menangani exception ZeroDivisionError:
try:
x = 10
y = 0
z = x / y
except ZeroDivisionError:
print("Error: Cannot divide by zero")
else:
print(z)
finally:
print("Program finished.")
Dalam contoh di atas, blok try-except-else-finally berhasil menangani exception ZeroDivisionError dan mengeluarkan pesan error yang kita buat, serta menampilkan pesan program selesai pada blok finally.
Penting untuk diingat bahwa menangani exception dengan benar sangat penting dalam memastikan program kita berjalan dengan baik dan menghindari program crash.
Contoh dan Penjelasan Try Exception dalam Python
Blok try-except digunakan untuk menangkap dan menangani exception yang mungkin terjadi saat menjalankan sebuah program. Berikut adalah beberapa contoh try exception yang umum digunakan:
1. Exception
Blok except Exception digunakan untuk menangkap semua jenis exception. Contoh penggunaannya:
try:
# kode program
except Exception:
# penanganan exception
2. TypeError
Blok except TypeError digunakan untuk menangkap exception ketika tipe data yang dioperasikan tidak sesuai. Contoh penggunaannya:
try:
x = 10
y = "string"
z = x + y
except TypeError:
print("Error: Cannot add integer and string")
3. ValueError
Blok except ValueError digunakan untuk menangkap exception ketika nilai dari suatu variabel tidak sesuai dengan yang diharapkan. Contoh penggunaannya:
try:
x = int("string")
except ValueError:
print("Error: Invalid value")
4. ZeroDivisionError
Blok except ZeroDivisionError digunakan untuk menangkap exception ketika terjadi pembagian dengan nol. Contoh penggunaannya:
try:
x = 10
y = 0
z = x / y
except ZeroDivisionError:
print("Error: Cannot divide by zero")
5. NameError
Blok except NameError digunakan untuk menangkap exception ketika variabel yang digunakan belum didefinisikan. Contoh penggunaannya:
try:
print(x)
except NameError:
print("Error: Variable x is not defined")
6. FileNotFoundError
Blok except FileNotFoundError digunakan untuk menangkap exception ketika file yang dimaksud tidak ditemukan. Contoh penggunaannya:
try:
f = open("file.txt", "r")
except FileNotFoundError:
print("Error: File not found")
Dalam penanganan exception, kita juga dapat menambahkan blok else dan finally pada blok try-except. Blok else akan dieksekusi jika tidak ada exception yang terjadi pada blok try, sedangkan blok finally akan dieksekusi setelah blok try atau blok except selesai dieksekusi, terlepas dari apakah exception terjadi atau tidak.
Gabung dalam percakapan