Daftar 28 Python Exceptions beserta penjelasan singkat dan contoh implementasinya.
- ArithmeticError
Penjelasan: Base class untuk semua error yang terjadi untuk perhitungan aritmatika.
Contoh:
python
try: result = 1 / 0 except ArithmeticError as e: print(f"Terjadi kesalahan aritmatika: {e}")
- AssertionError
Penjelasan: Terjadi ketika pernyataan assert gagal.
Contoh:
python
def check_positive(number): assert number > 0, "Angka harus positif" print(f"{number} adalah angka positif") try: check_positive(-5) except AssertionError as e: print(f"AssertionError: {e}")
- AttributeError
Penjelasan: Terjadi saat referensi atribut atau penugasan gagal.
Contoh:
python
class Example: pass try: ex = Example() print(ex.nonexistent_attribute) except AttributeError as e: print(f"AttributeError: {e}")
- EOFError
Penjelasan: Terjadi ketika input() mencapai kondisi EOF (End of File).
Contoh:
python
try: while True: data = input("Masukkan data: ") except EOFError: print("Reached end of file")
- FloatingPointError
Penjelasan: Terjadi ketika operasi floating point gagal.
Contoh:
python
import math try: print(math.exp(1000)) # Overflow untuk beberapa sistem except FloatingPointError as e: print(f"FloatingPointError: {e}")
- GeneratorExit
Penjelasan: Terjadi ketika metode close() generator dipanggil.
Contoh:
python
def generator(): try: yield 1 yield 2 except GeneratorExit: print("Generator ditutup") g = generator() next(g) g.close()
- ImportError
Penjelasan: Terjadi ketika import gagal.
Contoh:
python
try: import non_existent_module except ImportError as e: print(f"ImportError: {e}")
- IndexError
Penjelasan: Terjadi ketika indeks sequence berada di luar jangkauan.
Contoh:
python
try: my_list = [1, 2, 3] print(my_list[5]) except IndexError as e: print(f"IndexError: {e}")
- KeyError
Penjelasan: Terjadi ketika key tidak ditemukan dalam dictionary.
Contoh:
python
try: my_dict = {"a": 1, "b": 2} print(my_dict["c"]) except KeyError as e: print(f"KeyError: {e}")
- KeyboardInterrupt
Penjelasan: Terjadi ketika pengguna menekan tombol interrupt (biasanya Ctrl+C).
Contoh:
python
try: while True: pass except KeyboardInterrupt: print("Program dihentikan oleh pengguna")
- MemoryError
Penjelasan: Terjadi ketika operasi kehabisan memori.
Contoh:
python
try: big_list = [0] * (10**9) # Mencoba membuat list yang sangat besar except MemoryError as e: print(f"MemoryError: {e}")
- NameError
Penjelasan: Terjadi ketika variabel lokal atau global tidak ditemukan.
Contoh:
python
try: print(undefined_variable) except NameError as e: print(f"NameError: {e}")
- NotImplementedError
Penjelasan: Terjadi ketika metode abstrak membutuhkan implementasi turunan.
Contoh:
python
class AbstractClass: def abstract_method(self): raise NotImplementedError("Metode ini harus diimplementasikan di subclass") try: AbstractClass().abstract_method() except NotImplementedError as e: print(f"NotImplementedError: {e}")
- OSError
Penjelasan: Terjadi untuk error terkait sistem operasi.
Contoh:
python
try: open("file_yang_tidak_ada.txt", "r") except OSError as e: print(f"OSError: {e}")
- OverflowError
Penjelasan: Terjadi ketika hasil operasi aritmatika terlalu besar untuk direpresentasikan.
Contoh:
python
import sys try: result = sys.maxsize + 1 except OverflowError as e: print(f"OverflowError: {e}")
- ReferenceError
Penjelasan: Terjadi ketika referensi weak tidak lagi ada.
Contoh:
python
import weakref class MyClass: pass def callback(reference): print("Object sudah tidak ada") obj = MyClass() r = weakref.ref(obj, callback) del obj try: r() except ReferenceError as e: print(f"ReferenceError: {e}")
- RuntimeError
Penjelasan: Terjadi ketika error terdeteksi yang tidak termasuk dalam kategori lain.
Contoh:
python
def recursive_function(): recursive_function() try: recursive_function() except RuntimeError as e: print(f"RuntimeError: {e}")
- StopIteration
Penjelasan: Terjadi ketika metode next() dari iterator tidak menunjuk ke objek apapun.
Contoh:
python
my_list = [1, 2, 3] iterator = iter(my_list) try: while True: print(next(iterator)) except StopIteration: print("Iterasi selesai")
- SyntaxError
Penjelasan: Terjadi ketika parser menemukan kesalahan sintaks.
Contoh:
python
try: exec("print('Hello') print('World')") except SyntaxError as e: print(f"SyntaxError: {e}")
- IndentationError
Penjelasan: Terjadi untuk kesalahan indentasi.
Contoh:
python
try: exec(""" def function(): print("Indentasi salah") """) except IndentationError as e: print(f"IndentationError: {e}")
- TabError
Penjelasan: Terjadi ketika indentasi mengandung tab dan spasi yang tidak konsisten.
Contoh:
python
try: exec(""" def function(): print("Tab") print("Spasi") """) except TabError as e: print(f"TabError: {e}")
- SystemError
Penjelasan: Terjadi ketika interpreter menemukan masalah internal.
Contoh:
python
try: raise SystemError("Terjadi kesalahan sistem") except SystemError as e: print(f"SystemError: {e}")
- SystemExit
Penjelasan: Terjadi ketika fungsi sys.exit() dipanggil.
Contoh:
python
import sys try: sys.exit("Program berhenti") except SystemExit as e: print(f"SystemExit: {e}")
- TypeError
Penjelasan: Terjadi ketika operasi atau fungsi diterapkan pada objek dengan tipe yang tidak sesuai.
Contoh:
python
try: result = "42" + 42 except TypeError as e: print(f"TypeError: {e}")
- UnboundLocalError
Penjelasan: Terjadi ketika referensi dibuat ke variabel lokal dalam fungsi atau metode, tetapi tidak ada nilai yang ditetapkan pada variabel tersebut.
Contoh:
python
def function(): try: print(local_var) local_var = 10 except UnboundLocalError as e: print(f"UnboundLocalError: {e}") function()
- UnicodeError
Penjelasan: Terjadi ketika ada masalah dengan pengkodean atau dekoding Unicode.
Contoh:
python
try: b'\xff'.decode('utf-8') except UnicodeError as e: print(f"UnicodeError: {e}")
- UnicodeEncodeError
Penjelasan: Terjadi ketika pengkodean Unicode gagal.
Contoh:
python
try: '€'.encode('ascii') except UnicodeEncodeError as e: print(f"UnicodeEncodeError: {e}")
- UnicodeDecodeError
Penjelasan: Terjadi ketika dekoding Unicode gagal.
Contoh:
python
try: b'\xff'.decode('utf-8', 'strict') except UnicodeDecodeError as e: print(f"UnicodeDecodeError: {e}")
Comments
Post a Comment