استثنا (Try...Except)
استثنا (Try...Except) در پایتون برای مدیریت خطاها استفاده می شود. این ساختار به شما اجازه می دهد اجرای برنامه در صورت بروز خطا متوقف نشود و بتوانید واکنش مناسب نشان دهید.
مدیریت استثناها
زمانی که خطایی رخ دهد، پایتون به طور معمول اجرای برنامه را متوقف می کند. با استفاده از try
و except
می توانید خطا را مدیریت کنید:
try:
print(x)
except:
print("یک استثنا رخ داد")
مدیریت چندین خطا
می توانید چندین بلاک except
برای مدیریت خطاهای مختلف داشته باشید:
try:
print(x)
except NameError:
print("متغیر x تعریف نشده است")
except:
print("یک خطای دیگر رخ داد")
بلاک Else
با استفاده از else
می توانید کدی اجرا کنید که فقط در صورت عدم بروز خطا اجرا شود:
try:
print("سلام")
except:
print("خطا رخ داد")
else:
print("هیچ خطایی رخ نداد")
بلاک Finally
بلاک finally
همیشه اجرا می شود؛ چه خطا رخ دهد چه خیر. این ویژگی برای آزادسازی منابع مفید است:
try:
f = open("demo.txt")
try:
f.write("متن آزمایشی")
except:
print("خطا در نوشتن فایل")
finally:
f.close()
except:
print("خطا در باز کردن فایل")
ایجاد استثنا با raise
به عنوان توسعه دهنده می توانید با استفاده از raise
یک استثنا ایجاد کنید:
x = -1
if x < 0:
raise Exception("اعداد منفی مجاز نیستند")
همچنین می توانید نوع خطا را مشخص کنید:
x = "سلام"
if not isinstance(x, int):
raise TypeError("فقط عدد صحیح مجاز است")
ادامه یادگیری
برای مطالعه بیشتر به بخش پیپ (PIP) یا فصل قالب بندی رشته ها مراجعه کنید.