পাইথনে নিজস্ব এক্সেপশন টাইপ নিক্ষেপ

পাইথনে ডিফল্টভাবে থাকা এক্সেপশনগুলি বিভিন্ন পরিস্থিতিতে আমাদের সমস্ত চাহিদা মেটাতে পারে না। সেজন্য পাইথনে নিজস্ব টাইপের এক্সেপশন তৈরি করার ক্ষমতা অন্তর্নির্মিত রয়েছে।

একটি এক্সেপশন তৈরি করতে, OOP-এর একটি বিশেষ ক্লাস ঘোষণা করতে হবে class কীওয়ার্ড ব্যবহার করে। এর ডানদিকে এক্সেপশনের নাম লেখা হয়, এবং নামের পরে বন্ধনীতে - এক্সেপশনের টাইপ:

pythonclass এক্সেপশন(এক্সেপশনের টাইপ):
  pass

আসুন খুব লম্বা তালিকা ধরার জন্য আমাদের নিজস্ব ক্লাস ToBigLength তৈরি করি। এই ক্লাসের বন্ধনীতে আমরা সেই এক্সেপশনের টাইপ লিখব, যা এটি ধরবে। এটি যেন Exception এক্সেপশন হয়। ক্লাসের বডিতে আপাতত pass লিখতে পারি:

pythonclass ToBigLength(Exception):
  pass

আসুন এইমাত্র তৈরি করা এক্সেপশনের কাজ পরীক্ষা করি। এর জন্য try-except কনস্ট্রাকশন লিখি, এবং আমাদের এক্সেপশনটি raise বিশেষ কমান্ড দিয়ে নিক্ষেপ করি:

pythontry:
  raise ToBigLength
except ToBigLength:
  print('error: list is too big')

কোড এক্সিকিউট করার পরে আউটপুট হবে:

python'error: list is too big'
Задание 1

নেগেটিভ নাম্বার ধরার জন্য একটি এক্সেপশন তৈরি করুন।

Задание 2

শূন্য ধরার জন্য একটি এক্সেপশন তৈরি করুন।