حالت آفلاین — محتوا از حافظهٔ کش نمایش داده می‌شود
آموزش کار با فایل در پایتون؛ CSV، JSON و گزارش‌گیری

پیش‌بینی ValueError در تبدیل عدد پایتون

اعتبارسنجی داده فروش پایتون؛ رد کردن ردیف خراب و شمارش خطا · 0٪

✍️ int متن یک عدد صحیح را می‌خواند، اما متن اعشاری یا کلمه را خودکار به عدد صحیح دلخواه تبدیل نمی‌کند. اگر متن نامعتبر باشد ValueError رخ می‌دهد. می‌توانیم همین خطای مشخص را بگیریم و تصمیم قراردادی، مثل رد کردن ردیف، را اجرا کنیم؛ لازم نیست کل برنامه گزارش‌گیری متوقف شود.

برای نمونه، int(' 7 ') عدد هفت می‌دهد، اما int('هفت') تبدیل موفقی ندارد. حالا خروجی این کد را ردگیری کن:

values = ['3', '2.5', '0']
result = []
for text in values:
    try:
        result.append(int(text))
    except ValueError:
        result.append(None)
print(result)

کد هنوز شرط مثبت بودن تعداد را اجرا نمی‌کند؛ فقط تبدیل نوع را می‌سنجد. بنابراین صفر از نظر این قطعه قابل تبدیل است و باقی می‌ماند. اعتبار دامنه مرحله بعدی است. خطای رایج، یکی دانستن «قابل تبدیل به int» و «تعداد معتبر برای فروش» است.

گزینه‌ای را انتخاب کن که هم عددهای درست را حفظ کرده و هم فقط تبدیل خراب را به None تبدیل کرده باشد. None یک مقدار ویژه پایتون است، نه رشته 'None' و نه عدد صفر؛ در JSON معادل null خواهد داشت.

فعالیت شما

خروجی result را برای ['3','2.5','0'] انتخاب کن؛ فقط تبدیل int انجام شده و دامنه مثبت بودن هنوز بررسی نشده است.

مطالعهٔ این گام برای همه آزاد است

برای پاسخ‌دادن، بررسی پاسخ، ثبت پیشرفت و استفاده از دستیار باید شرایط شرکت در فعالیت‌ها را داشته باشید.

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

برای انجام فعالیت‌ها ابتدا این دوره‌های پیش‌نیاز را تکمیل کنید:

گزینه‌های پیش‌بینی خروجی

  1. [3, None, 0]
  2. [3, 2, 0]
  3. [3, None, None]