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

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

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

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("除数不能为零")
    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 klausa finally:
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan