Python Dasar #8: Exception Handling

Author Hilya Zea
26 Dec 2024
Python Dasar #8:  Exception Handling

Halo! Di tutorial kali ini, kita akan belajar tentang penanganan error di Python. Salah satu hal yang sering terjadi dalam pemrograman adalah munculnya kesalahan atau error. Meskipun kita sudah menulis kode dengan baik, error masih bisa terjadi. Oleh karena itu, kita perlu tahu cara menangani error dengan baik agar program kita tetap berjalan meskipun ada kesalahan.

Apa Itu Penanganan Error?

Penanganan error atau exception handling adalah cara untuk menangani kesalahan yang terjadi saat program dijalankan, sehingga program tidak langsung berhenti dan bisa memberikan pesan yang lebih jelas atau melakukan tindakan yang diperlukan untuk mengatasi error tersebut.

Menggunakan try dan except

Di Python, kita menggunakan blok try dan except untuk menangani error. Blok try berisi kode yang mungkin menyebabkan error, dan blok except berisi kode untuk menangani error tersebut jika terjadi.

Sintaks Penanganan Error:

try:
    # Blok kode yang berisiko menyebabkan error
except ExceptionType:
    # Blok kode untuk menangani error

Contoh Penanganan Error:

Misalnya, kita ingin membagi dua angka. Jika pembagian dilakukan dengan angka nol, akan muncul error. Kita bisa menangani error ini menggunakan try dan except.

try:
    x = int(input("Masukkan angka pertama: "))
    y = int(input("Masukkan angka kedua: "))
    hasil = x / y
    print(f"Hasil pembagian: {hasil}")
except ZeroDivisionError:
    print("Tidak bisa membagi dengan nol!")
except ValueError:
    print("Input harus berupa angka!")

Output:

Masukkan angka pertama: 10
Masukkan angka kedua: 0
Tidak bisa membagi dengan nol!

Pada contoh di atas, kita menangani dua jenis error:

  • ZeroDivisionError: Kesalahan saat membagi dengan nol.
  • ValueError: Kesalahan saat input bukan angka.

Menangani Semua Jenis Error

Jika kamu tidak tahu jenis error yang mungkin terjadi, kamu bisa menangani semua error dengan menggunakan except tanpa menyebutkan tipe error.

try:
    x = int(input("Masukkan angka pertama: "))
    y = int(input("Masukkan angka kedua: "))
    hasil = x / y
    print(f"Hasil pembagian: {hasil}")
except:
    print("Terjadi kesalahan!")

Namun, disarankan untuk lebih spesifik dalam menangani error, agar kamu tahu persis apa yang salah dan bisa menangani masalahnya dengan tepat.

Menambahkan Blok else dan finally

Selain try dan except, kita juga bisa menambahkan blok else dan finally.

  • else: Dijalankan jika tidak ada error dalam blok try.
  • finally: Dijalankan apa pun yang terjadi, baik terjadi error atau tidak.

Contoh penggunaan else dan finally:

try:
    x = int(input("Masukkan angka pertama: "))
    y = int(input("Masukkan angka kedua: "))
    hasil = x / y
except ZeroDivisionError:
    print("Tidak bisa membagi dengan nol!")
except ValueError:
    print("Input harus berupa angka!")
else:
    print(f"Hasil pembagian: {hasil}")
finally:
    print("Program selesai.")

Output jika tidak ada error:

Masukkan angka pertama: 10
Masukkan angka kedua: 2
Hasil pembagian: 5.0
Program selesai.

Output jika terjadi error:

Masukkan angka pertama: 10
Masukkan angka kedua: 0
Tidak bisa membagi dengan nol!
Program selesai.

Studi Kasus: Menangani File yang Tidak Ditemukan

Sekarang, kita akan mencoba menangani error saat mencoba membuka file yang tidak ada. Program ini akan meminta nama file dan mencoba membukanya. Jika file tidak ditemukan, program akan menangani error tersebut.

try:
    filename = input("Masukkan nama file: ")
    with open(filename, 'r') as file:
        content = file.read()
        print(content)
except FileNotFoundError:
    print("File tidak ditemukan!")
except Exception as e:
    print(f"Terjadi kesalahan: {e}")

Output jika file tidak ada:

Masukkan nama file: data.txt
File tidak ditemukan!

Kesimpulan

Penanganan error adalah keterampilan penting dalam pemrograman, karena membantu kita membuat program yang lebih tahan terhadap kesalahan dan memberikan pengalaman pengguna yang lebih baik. Dengan menggunakan blok try, except, else, dan finally, kita bisa menangani error dengan cara yang terstruktur dan jelas.

Sekianlah belajar tentang penanganan error di Python. Dengan menguasai exception handling, kamu bisa menghindari program yang tiba-tiba berhenti dan membuat program lebih stabil. Artikel ini sangat berguna sebelum kamu melanjutkan ke tutorial Python selanjutnya di www.code80vity.com. Sampai jumpa di pembahasan berikutnya, dan jangan lupa terus eksplorasi Python!

Tutorial Terkait Lainnya

Comments

Please login to post a comment.
No comments yet. Be the first to comment!