নিচের কোডটি রান করি কোন এরর থাকলে except ব্লকের মধ্যে আমাদের print মেথড টি প্রিন্ট হবে। এক্ষেত্রে যদি আমরা ০ দেই বা অক্ষর দেই তাহলে ওই একটা মেসেজ ই দেখতে পাবো।
try:
number = int(input('Inter Enput' ))
gpa = 40/number
except :
print(' give correct input')

এবার আমরা আসল এরর টি দেখার জন্য raise ব্যবহার করবো
try:
number = int(input('Inter Enput' ))
gpa = 40/number
except :
print(' give correct input')
raise
ইনপুট ০ দেয়ার কারণে আসল এরর টি শো করছে :ZeroDivisionError: division by zero

আমরা কি শুধু এইটার জন্য raise ব্যবহার করছি ?
না আমরা কাস্টম মেসেজ দেখানোর জন্য raise ব্যবহার করছি যেমন ডিফল্ট ভাবে ০ এর জন্য মেসেজ শো করছে ZeroDivisionError: division by zero আমরা এটাকে পরিবর্তন করে নিজেদের মতো করে মেসেজ প্রিন্ট করবো।
try:
number = int(input('Inter Enput' ))
gpa = 40/number
except :
print(' give correct input')
raise ZeroDivisionError(' give number without 0')
Output
Traceback (most recent call last):
File "C:\Users\oleetech\Desktop\hello.py", line 10, in <module>
raise ZeroDivisionError(' give number without 0')
ZeroDivisionError: give number without 0
এভাবে আমরা ডিফল্ট এরর মেসেজ গুলোকে পরিবর্তন করে কাস্টম এরর মেসেজ শো করাতে পারি।
def divide(a, b):
if b == 0:
raise ValueError("Division by zero is not allowed")
return a / b
try:
result = divide(10, 0)
except ValueError as e:
print("Caught an exception:", e)