بررسی خطای value error در پایتون
خطای ValueError در پایتون زمانی ایجاد میشود که یک مقدار نامعتبر به تابع ارسال کنید. دقت کنید که مقدار آرگومان ارسالی باید نامعتبر باشد و نه نوع آن. این پیغام خطا معمولاً در عملیاتهای ریاضی رخ میدهد که به نوع خاصی از مقدار نیاز دارند.
مثلا تابعی را تصور کنید یک عدد به عنوان آرگومان گرفته و جذر آن را محاسبه میکند. اگر شما یک عدد منفی به این تابع ارسال کنید با خطای ValueError مواجه خواهید شد زیر نوع آرگومان ارسالی(عدد) درست است اما مقدار آن(منفی) نامعتبر است.
ویدیو پیشنهادی: آموزش مدیریت خطاها در پایتون
در مثال زیر با تابع sqrt ماژول math سعی در گرفتن جذر اعداد داریم:
import math
print(math.sqrt(-1)
# OUTPUT
ValueError: math domain error
همانطور که در خروجی کد بالا میبینید، یک خطای ValueError رخ داده است. نوع آرگومان ارسالی که عدد است معتبر است اما مقدار منفی آن نامعتبر است زیرا در ریاضیات نمیتوان جذر اعداد منفی را گرفت.
برای مدیریت خطای ValueError در پایتون میتوانید از بلاک try/except استفاده کنید:
import math
try:
print(math.sqrt(-1))
except ValueError:
print('You can not get take the square root of a negative number ')
# OUTPUT
You can not get take the square root of a negative number
کد بالا نشان می دهد که ما با استفاده از بلوک های "try" و "except" توانستیم ValueError را در کد خود مدیریت کنیم.