Memunculkan dan Memunculkan Ulang Pengecualian
Gunakan raise untuk menandai error dan lakukan pemunculan ulang agar error diteruskan.
Memunculkan dan Memunculkan Ulang Pengecualian adalah pelajaran Python Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Python Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Python Academy mencakup 4 pelajaran total.
Pendahuluan
Memunculkan Pengecualian Bawaan
def divide(a, b):
if b == 0:
raise ValueError('Denominator cannot be zero')
return a / b
try:
divide(5, 0)
except ValueError as e:
print(e)Memunculkan Kembali Pengecualian yang Sama
def process(data):
try:
return int(data)
except ValueError:
print('logging error')
raise # re-raises original
try:
process('abc')
except ValueError:
print('caller caught it')Merantaikan Pengecualian dengan from
try:
int('abc')
except ValueError as original:
raise RuntimeError('processing failed') from originalMenekan Perantaian
try:
int('abc')
except ValueError:
raise RuntimeError('clean error') from NonePernyataan assert
def sqrt(x):
assert x >= 0, f'Input must be non-negative, got {x}'
return x ** 0.5
try:
sqrt(-1)
except AssertionError as e:
print(e)Pemunculan Bersyarat
def process(items):
if not items:
raise ValueError('items must not be empty')
return items[0]
print(process([1, 2, 3]))Memunculkan Kembali vs Pengecualian Baru
def outer():
try:
inner()
except ValueError as e:
raise RuntimeError('outer failed') from e
def inner():
raise ValueError('inner failed')
try:
outer()
except RuntimeError as e:
print(e, e.__cause__)Pengecualian dalam finally
try:
try:
raise ValueError('original')
finally:
print('finally ran')
except ValueError as e:
print('caught:', e)warnings.warn vs raise
import warnings
def old_func():
warnings.warn('Deprecated', DeprecationWarning)
return 42
print(old_func())Pola raise from None
class DBError(Exception): pass
def query(q):
try:
raise ConnectionError('refused')
except ConnectionError:
raise DBError('query failed') from None
try:
query('SELECT 1')
except DBError as e:
print(e)Pemeriksaan Singkat
Ringkasan
Lanjutkan
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Memunculkan dan Memunculkan Ulang Pengecualian” gratis?
Ya — teks lengkap “Memunculkan dan Memunculkan Ulang Pengecualian” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Python Academy, upgrade ke CoddyKit PRO. Kursus Python Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Memunculkan dan Memunculkan Ulang Pengecualian”?
Gunakan raise untuk menandai error dan lakukan pemunculan ulang agar error diteruskan. Kamu berlatih Python Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Python Academy?
Tidak diperlukan pengalaman sebelumnya. Python Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.
Berapa lama pelajaran “Memunculkan dan Memunculkan Ulang Pengecualian” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Python Academy ini?
Ya. Setiap pelajaran Python Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Memahami Pengecualian
- try / except / else / finally
- Memunculkan dan Memunculkan Ulang Pengecualian
- Class Pengecualian Kustom