Python Try Except

در پایتون، Try … Except برای مدیریت خطاها (Exceptions) استفاده می‌شود.
این ساختار کمک می‌کند که برنامه هنگام مواجهه با خطا به جای توقف کامل، کنترل شده ادامه پیدا کند.

🔹 ساختار پایه

try: # کدی که ممکن است خطا ایجاد کند x = 10 / 0 except: # کدی که هنگام خطا اجرا می‌شود print("یک خطای ریاضی رخ داد!")

📌 خروجی:

یک خطای ریاضی رخ داد!

اگر خطا رخ دهد، بخش except اجرا می‌شود؛ اگر خطا رخ ندهد، این بخش نادیده گرفته می‌شود.

🔹 دسترسی به پیام خطا

try: x = 10 / 0 except ZeroDivisionError as e: print("خطا:", e)

📌 خروجی:

خطا: division by zero

🔹 چند نوع خطا

try: num = int("abc") # ValueError x = 10 / 0 # ZeroDivisionError except ValueError: print("خطای مقدار غیرمعتبر") except ZeroDivisionError: print("تقسیم بر صفر مجاز نیست")

می‌توان برای هر نوع خطا except جداگانه تعریف کرد.

🔹 except کلی

try: x = 10 / 0 except Exception as e: # تمامی خطاها را می‌گیرد print("خطا:", e)

🔹 finally

بخش finally همیشه اجرا می‌شود، چه خطایی رخ دهد و چه نه:

try: x = 10 / 2 finally: print("این بخش همیشه اجرا می‌شود")

🔹 else

کد داخل else زمانی اجرا می‌شود که خطایی رخ ندهد:

try: x = 10 / 2 except ZeroDivisionError: print("تقسیم بر صفر") else: print("عملیات با موفقیت انجام شد")

📌 خروجی:

عملیات با موفقیت انجام شد

🔹 تمرین‌های پیشنهادی

  1. برنامه‌ای بنویس که دو عدد دریافت کند و تقسیم کند؛ خطای تقسیم بر صفر را مدیریت کند.

  2. برنامه‌ای بنویس که رشته‌ای از کاربر بگیرد و به عدد تبدیل کند؛ خطای تبدیل را کنترل کند.

  3. از finally استفاده کن تا پیغام پایان برنامه همیشه چاپ شود، حتی اگر خطا رخ دهد.

✅ خلاصه

  • try = کدی که ممکن است خطا ایجاد کند.

  • except = کدی که هنگام خطا اجرا می‌شود.

  • else = کدی که اگر خطا رخ ندهد اجرا می‌شود.

  • finally = کدی که همیشه اجرا می‌شود.

  • استفاده از Try … Except باعث پایداری و کنترل خطاهای برنامه می‌شود.