رفع خطای ZeroDivisionError در پایتون

5 دقیقه
naei.ir/blog/video/vso5zi4

یکی از رایج‌ترین خطاهایی که در پایتون (و حتی زبان‌های دیگر برنامه‌نویسی) با آن روبه‌رو می‌شوید، خطای ZeroDivisionError است. این خطا زمانی رخ می‌دهد که شما بخواهید عددی را بر صفر تقسیم کنید. طبق قوانین ریاضی، تقسیم بر صفر تعریف نشده است، بنابراین پایتون هم نمی‌داند چطور باید چنین عملیاتی را انجام دهد.

چرا تقسیم بر صفر در ریاضی غیرممکن است؟

جواب کوتاه این است که چون نتیجه آن مشخص نیست. مثلاً اگر بگوییم ۱۰ تقسیم بر صفر، نمی‌توانیم بگوییم خروجی چه عددی است چون هیچ عددی وجود ندارد که اگر در صفر ضرب شود، عدد ۱۰ بدهد. پس این یک قانون ریاضی است، نه نظر شخصی برنامه‌نویس یا زبان برنامه‌نویسی.

مثال‌های رایج از ZeroDivisionError

در ساده‌ترین حالت وقتی می‌خواهید عددی را مستقیماً تقسیم بر صفر کنید، با این ارور روبه‌رو می‌شوید.

اما این خطا همیشه به این وضوح نیست. مثلاً اگر از درصد (%) برای محاسبه باقیمانده تقسیم استفاده کنید ولی مخرج صفر باشد، باز هم همین خطا را دریافت خواهید کرد.

خطای تقسیم بر صفر زمانی که ورودی از کاربر دریافت می‌کنید

گاهی شما ورودی را از کاربر می‌گیرید و انتظار دارید کاربر عدد مناسبی وارد کند. ولی اگر کاربر مقدار صفر وارد کند، برنامه‌تان دچار خطا می‌شود. اینجاست که برنامه باید پیش‌بینی و مدیریت خطا داشته باشد.

چگونه ZeroDivisionError را مدیریت کنیم؟

1. استفاده از Try-Except

با استفاده از بلوک try-except می‌توانید از بروز خطا جلوگیری کرده و به‌جای کرش شدن برنامه، یک پیغام مناسب به کاربر نمایش دهید.

2. بررسی دستی مقدار قبل از تقسیم

راه بهتر و حرفه‌ای‌تر این است که قبل از تقسیم، بررسی کنید که عدد مخرج صفر نباشد. اگر صفر بود، به کاربر اعلام کنید که مقدار وارد شده معتبر نیست.

امیرحسین نائی
برنامه نویس 💻 علاقمند به بیزینس 🚀
  • موسس آکادمی برنامه‌نویسی نائی
  • بنیان‌گذار کدبزن، رادیو کدبزن، EveryAPI، دستیار بیزینس و...
  • نویسنده‌ی کتاب پرفروش «برنامه‌نویسی رو از اینجا شروع کن!»
  • بیش از 10 سال تجربه در برنامه‌نویسی و راه‌اندازی کسب‌وکار
  • تولیدکننده‌ی ۱۰۰+ ساعت ویدیوی آموزشی رایگان

سایر مطالب

وردپرس یاد بگیرم یا برنامه نویسی وب؟ مقایسه کامل
مقاله ویدیویی

وردپرس یاد بگیرم یا برنامه نویسی وب؟ مقایسه کامل

وردپرس یکی از ابزارهای ساخت سایت بدون کدنویسیه که به خاطر راحت بودن میتونی خیلی سریع یادش بگیری اما واقعا چنین ابزاری ارزش یادگیری داره؟ یا بهتره برنامه نویسی وب که سختتر و حرفه ای تر هست رو یاد بگیری؟ توی این مطلب وردپرس و برنامه نویسی وبسایت رو در بخش های مختلف مقایسه میکنم تا راحت بتونی تصمیم بگیری وردپرس چیه؟ وردپرس یه برنامه تحت وبه که میتونی روی هاستت نصبش کنی و بدون کدنویسی با چند تا دکمه سایتت رو بالا بیاری. از طرفی دیگر برنامه نویس وب هست که میتونی سایت موردنظرتو از صفر کدنویسی کنی ب...

ادامه مطلب
روش های کسب درآمد از برنامه نویسی وب (بجز کارمندی)
مقاله آموزشی

روش های کسب درآمد از برنامه نویسی وب (بجز کارمندی)

برنامه‌نویسی وب یکی از حوزه‌های پرطرفدار و پردرآمد در دنیای امروز است. برنامه نویس وب فردی است که میتواند وبسایت های مختلف و اپلیکیشن هایی بر بستر وب برنامه نویسی کند. اما برخلاف بسیاری از شغل‌های سنتی، روش‌های کسب درآمد از برنامه‌نویسی می‌توانند مستقل از زمان و مکان باشند. در این مطلب، به بررسی چند روش مهم کسب درآمد از برنامه‌نویسی وب خواهیم پرداخت. همچنین به بررسی معایب کارمندی در مقابل این روش‌ها اشاره خواهیم کرد.فریلنسری (پروژه‌ای)فریلنسری یکی از روش‌های محبوب برای کسب درآمد از برنامه‌نوی...

ادامه مطلب

تخفیف فقط برای شما

قابل استفاده روی تمام محصولات آموزشی

کد: