Menu
CoddyTech

Kustomisasi traceback

Pelajaran 16 dari 16 dalam kursus Penanganan Exception di Python di Coddy.

Saat kamu menjalankan program di bawah ini, kamu akan mendapatkan detail traceback, exception, dan pesan standar exception di jendela output.

print(100 + "hello")

Program di atas akan menghasilkan output berikut:

Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    print(100+'hello')
TypeError: unsupported operand type(s) for +: 'int' and 'str'

3 baris pertama berisi detail traceback, seperti nomor baris, nama file, pernyataan, dan sebagainya.

Baris terakhir adalah Exception: pesan standar untuk exception.

Saat exception terjadi, pemanggilan diteruskan ke fungsi sys.excepthook() yang berisi argumen berikut.

  • exc_type :- Tipe exception yang terjadi.
  • exc_value :- pesan standar untuk exception
  • exc_traceback:- detail traceback

sys.excepthook() kemudian mencetak semua argumen ini di jendela output sebagai pesan error standar.

challenge icon

Tantangan

Mudah

Override fungsi sys.excepthook untuk menyesuaikan dan mencetak pesanmu sendiri di jendela output jika Exception terjadi. Untuk pernyataan python di atas, fungsi tersebut seharusnya mencetak "Something Went Wrong!" lalu hanya pesan standar Exception.

Coba sendiri

import sys

def my_exception(exc_type, exc_value, exc_traceback):
    #tulis kodemu di sini

#timpa dengan penugasan

def add(val1, val2):
    print(val1+val2)

Semua pelajaran di Penanganan Exception di Python

Latihan sendiri: Compiler Python online