Panduan praktikal Python untuk pengendalian pengecualian, menyelesaikan ralat biasa tidak lagi sukar

王林
Lepaskan: 2024-02-25 16:04:20
ke hadapan
645 orang telah melayarinya

Python 异常处理实战指南,解决常见错误不再是难事

1.pythonmekanisme pengendalian pengecualian

Mekanisme pengendalian pengecualian dalam

Pythonterutamanya terdiri daripada bahagian berikut:

  1. Pengecualian: Pengecualian ialah peristiwa ralat yang mungkin berlaku semasa program berjalan, yang boleh dibahagikan kepada ralat sintaks, ralat masa jalan, ralat logik, dsb.
  2. Jenis pengecualian: Terdapat beberapa jenis pengecualian yang ditakrifkan dalam Python, dan setiap jenis pengecualian mewakili ralat tertentu. Contohnya,SyntaxError表示语法错误,IndexError表示索引错误,ValueErrorbermaksud ralat sintaks,
  3. bermaksud
  4. indeks
  5. ralat,
  6. bermaksud ralat nilai, dsb.try-excepttry-finallytry-else
  7. Objek pengecualian: Apabila pengecualian berlaku, Python akan mencipta objek pengecualian, yang mengandungi maklumat terperinci tentang pengecualian, seperti jenis pengecualian, maklumat pengecualian, lokasi pengecualian berlaku, dsb.

Pernyataan pengendalian pengecualian: Python menyediakan pelbagai pernyataan pengendalian pengecualian, seperti

, dsb., yang boleh menangkap dan mengendalikan pengecualian.

    2. Pengecualian biasa Python
  1. SyntaxErrorDalam Python, pengecualian yang paling biasa termasuk:
  2. IndexError: Ralat sintaks, biasanya disebabkan oleh ralat sintaks dalam kod.
  3. : Ralat indeks, biasanya disebabkan oleh pengindeksan luar sempadan jujukan seperti senarai, tupel atauValueErrorrentetan
  4. .
  5. TypeError
  6. : Ralat nilai, biasanya disebabkan oleh nilai parameter atau jenis data yang salah.
  7. NameError
  8. : Ralat taip, biasanya disebabkan oleh menggunakan objek dengan jenis data yang tidak serasi.
  9. ZeroDivisionError
  10. : Ralat nama, biasanya disebabkan oleh penggunaan pembolehubah atau fungsi yang tidak ditentukan.

ZeroDivis

io

nError: Pembahagian dengan ralat sifar, biasanya disebabkan oleh cubaan membahagikan nombor dengan sifar.

  1. 3. Amalan pengendalian pengecualian Python
Yang berikut menunjukkan cara mengendalikan pengecualian Python biasa melalui contoh yang kaya:
  1. Pengendalian pengecualian asas:
    try: # 可能会引发异常的代码 print(1 / 0) except ZeroDivisionError: print("除数不能为零")
    Salin selepas log masuk
  1. elseTangkap pelbagai pengecualian:
try: # 可能会引发多个异常的代码 print(1 / 0) print(list[100]) except (ZeroDivisionError, IndexError): print("除数不能为零或索引越界")
Salin selepas log masuk
  1. Gunakan klausafinally:
try: # 可能会引发异常的代码 print(1 / 1) except ZeroDivisionError: print("除数不能为零") else: print("除法运算成功")
Salin selepas log masuk
  1. Gunakan klausa
  2. :

try: # 可能会引发异常的代码 print(1 / 1) finally: print("无论是否发生异常,都会执行该代码")
Salin selepas log masuk

Pengecualian tersuai:

class MyError(Exception): def __init__(self, message): self.message = message try: # 可能会引发自定义异常的代码 if x < 0: raise MyError("x 不能小于 0") except MyError as e: print(e.message)
Salin selepas log masuk
4. Kesimpulan Pengendalian pengecualian Python ialah bahagian penting dalam pengaturcaraan Saya harap artikel ini dapat membantu pembaca memahami dengan mendalam mekanisme pengendalian pengecualian dalam Python dan menguasai cara menangani ralat biasa. Melalui latihan, pembaca boleh menjadi mahir dalam menggunakan pernyataan pengendalian pengecualian dan menulis program Python yang lebih mantap.

Atas ialah kandungan terperinci Panduan praktikal Python untuk pengendalian pengecualian, menyelesaikan ralat biasa tidak lagi sukar. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:lsjlt.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!