পাইথনে নিজস্ব এক্সেপশন টাইপ নিক্ষেপ
পাইথনে ডিফল্টভাবে থাকা এক্সেপশনগুলি বিভিন্ন পরিস্থিতিতে আমাদের সমস্ত চাহিদা মেটাতে পারে না। সেজন্য পাইথনে নিজস্ব টাইপের এক্সেপশন তৈরি করার ক্ষমতা অন্তর্নির্মিত রয়েছে।
একটি এক্সেপশন তৈরি করতে, OOP-এর একটি বিশেষ ক্লাস ঘোষণা করতে হবে class কীওয়ার্ড ব্যবহার করে।
এর ডানদিকে এক্সেপশনের নাম লেখা হয়, এবং নামের পরে বন্ধনীতে - এক্সেপশনের টাইপ:
class এক্সেপশন(এক্সেপশনের টাইপ):
pass
আসুন খুব লম্বা তালিকা ধরার জন্য আমাদের নিজস্ব ক্লাস ToBigLength তৈরি করি।
এই ক্লাসের বন্ধনীতে আমরা সেই এক্সেপশনের টাইপ লিখব, যা এটি ধরবে।
এটি যেন Exception এক্সেপশন হয়।
ক্লাসের বডিতে আপাতত pass লিখতে পারি:
class ToBigLength(Exception):
pass
আসুন এইমাত্র তৈরি করা এক্সেপশনের কাজ পরীক্ষা করি।
এর জন্য try-except কনস্ট্রাকশন লিখি, এবং আমাদের এক্সেপশনটি raise বিশেষ কমান্ড দিয়ে নিক্ষেপ করি:
try:
raise ToBigLength
except ToBigLength:
print('error: list is too big')
কোড এক্সিকিউট করার পরে আউটপুট হবে:
'error: list is too big'
নেগেটিভ নাম্বার ধরার জন্য একটি এক্সেপশন তৈরি করুন।
শূন্য ধরার জন্য একটি এক্সেপশন তৈরি করুন।