Python – مدیریت استثنا (Try Except)

مدیریت استثنا در پایتون

مدیریت استثناها در پایتون با استفاده از بلوک‌های try, except, else, و finally انجام می‌شود. در زیر توضیحاتی در مورد هر یک از این بلوک‌ها و نحوه استفاده از آن‌ها ارائه شده است:

بلوک‌های try و except

بلوک try به شما این امکان را می‌دهد که کدی را امتحان کنید که ممکن است خطا ایجاد کند. اگر خطایی در بلوک try رخ دهد، بلوک except اجرا می‌شود.

مثال:

try:
  print(x)
except:
  print("An exception occurred")

در این مثال، چون متغیر x تعریف نشده است، خطا ایجاد می‌شود و پیام "An exception occurred" چاپ می‌شود.

مدیریت انواع مختلف استثناها

می‌توانید چندین بلوک except برای مدیریت انواع مختلف استثناها تعریف کنید.

مثال:

try:
  print(x)
except NameError:
  print("Variable x is not defined")
except:
  print("Something else went wrong")

در این مثال، اگر خطای NameError رخ دهد، پیام "Variable x is not defined" چاپ می‌شود. برای سایر خطاها، پیام "Something else went wrong" چاپ خواهد شد.

بلوک else

بلوک else به شما این امکان را می‌دهد که کدی را اجرا کنید اگر هیچ خطایی در بلوک try رخ ندهد.

مثال:

try:
  print("Hello")
except:
  print("Something went wrong")
else:
  print("Nothing went wrong")

در این مثال، چون خطایی در بلوک try رخ نمی‌دهد، پیام "Nothing went wrong" چاپ می‌شود.

بلوک finally

بلوک finally، در صورتی که مشخص شده باشد، همیشه اجرا می‌شود، چه خطایی در بلوک try رخ دهد و چه نه. این بلوک معمولاً برای بستن فایل‌ها یا تمیز کردن منابع استفاده می‌شود.

مثال:

try:
  print(x)
except:
  print("Something went wrong")
finally:
  print("The 'try except' is finished")

در این مثال، پیام "The 'try except' is finished" حتی اگر خطا در بلوک try رخ دهد یا نه، چاپ می‌شود.

پرتاب استثنا

شما می‌توانید به عنوان یک توسعه‌دهنده پایتون، در صورت وقوع یک شرط خاص، یک استثنا را پرتاب کنید. برای پرتاب (یا “raise”) استثنا، از کلمه کلیدی raise استفاده کنید.

مثال:

x = -1

if x < 0:
  raise Exception("Sorry, no numbers below zero")

در این مثال، اگر x کمتر از 0 باشد، یک استثنا با پیام "Sorry, no numbers below zero" پرتاب می‌شود.

مثال دیگر:

x = "hello"

if not type(x) is int:
  raise TypeError("Only integers are allowed")

در این مثال، اگر نوع متغیر x عدد صحیح نباشد، یک استثنا از نوع TypeError با پیام "Only integers are allowed" پرتاب می‌شود.

پست های مرتبط

مطالعه این پست ها رو از دست ندین!
JavaScript - تاریخ‌ها (Dates)

JavaScript – تاریخ‌ها (Dates)

آبجکت‌های تاریخ (Date) در جاوااسکریپت آبجکت‌های تاریخ در جاوااسکریپت به ما امکان کار با تاریخ و زمان را می‌دهند....

بیشتر بخوانید
JavaScript - آرایه‌های ثابت (Array Const)

JavaScript – آرایه‌های ثابت (Array Const)

جاوااسکریپت: تعریف آرایه با const در سال 2015، جاوااسکریپت کلمه کلیدی مهمی به نام const را معرفی کرد. این...

بیشتر بخوانید
JavaScript - تکرار آرایه‌ها (Array Iteration)

JavaScript – تکرار آرایه‌ها (Array Iteration)

جاوا اسکریپت: تکرار بر روی آرایه‌ها جاوا اسکریپت روش‌های مختلفی برای تکرار (Iteration) بر روی آرایه‌ها ارائه می‌دهد که...

بیشتر بخوانید

نظرات

سوالات و نظراتتون رو با ما به اشتراک بذارید

برای ارسال نظر لطفا ابتدا وارد حساب کاربری خود شوید.