Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Panduan praktikal Python untuk pengendalian pengecualian, menyelesaikan ralat biasa tidak lagi sukar

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

王林
王林ke hadapan
2024-02-25 16:04:20665semak imbas

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

1. python mekanisme pengendalian pengecualian

Mekanisme pengendalian pengecualian dalam

Python terutamanya 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 表示索引错误,ValueError bermaksud 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 atau ValueErrorrentetan
  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. ZeroDivis<strong class="keylink">io</strong>nError
  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("除数不能为零")
  1. elseTangkap pelbagai pengecualian:
try:
# 可能会引发多个异常的代码
print(1 / 0)
print(list[100])
except (ZeroDivisionError, IndexError):
print("除数不能为零或索引越界")
  1. Gunakan klausa finally:
try:
# 可能会引发异常的代码
print(1 / 1)
except ZeroDivisionError:
print("除数不能为零")
else:
print("除法运算成功")
  1. Gunakan klausa
  2. :

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

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)

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!

Kenyataan:
Artikel ini dikembalikan pada:lsjlt.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam