পাইথনে কাস্টম এক্সেপশন তৈরি করা সম্ভব, যা ব্যবহারকারী-defined এক্সেপশন হিসেবে পরিচিত। কাস্টম এক্সেপশন তৈরি করার মাধ্যমে আপনি আপনার প্রোগ্রামের নির্দিষ্ট প্রয়োজনের জন্য এক্সেপশন তৈরি করতে পারেন। এটি আরও পরিষ্কার এবং বোঝার সহজ করে তোলে যে কেন এবং কখন এক্সেপশন ঘটছে।
কাস্টম এক্সেপশন তৈরি
কাস্টম এক্সেপশন তৈরি করার জন্য, আপনাকে Exception ক্লাসের একটি সাবক্লাস তৈরি করতে হবে। এরপর, এই ক্লাসের একটি ইনস্ট্যান্স তৈরি করে এটি ব্যবহার করতে পারবেন।
উদাহরণ
নিচে একটি কাস্টম এক্সেপশন তৈরি করা হয়েছে যা একটি ভ্যালিডেশন চেক করে। এই উদাহরণে, আমরা একটি NegativeNumberError নামক কাস্টম এক্সেপশন তৈরি করবো যা নিশ্চিত করবে যে সংখ্যাটি নেগেটিভ নয়।
১. কাস্টম এক্সেপশন ক্লাস তৈরি করা
class NegativeNumberError(Exception):
"""Custom exception for negative numbers."""
def __init__(self, value):
self.value = value
self.message = f"Error: Negative value {value} is not allowed."
super().__init__(self.message)
২. কাস্টম এক্সেপশন ব্যবহার করা
এখন, কাস্টম এক্সেপশনটি ব্যবহার করে একটি ফাংশন তৈরি করা যাক যা একটি সংখ্যা গ্রহণ করবে এবং যদি সংখ্যা নেগেটিভ হয় তবে এটি NegativeNumberError এক্সেপশনটি উঠাবে।
def check_positive(number):
if number < 0:
raise NegativeNumberError(number)
return f"The number {number} is positive."
# উদাহরণ হিসেবে ফাংশনটি ব্যবহার করা
try:
print(check_positive(5)) # আউটপুট: The number 5 is positive.
print(check_positive(-3)) # এখানে কাস্টম এক্সেপশন উঠবে
except NegativeNumberError as e:
print(e) # আউটপুট: Error: Negative value -3 is not allowed.
সারসংক্ষেপ
কাস্টম এক্সেপশন তৈরি করা একটি শক্তিশালী বৈশিষ্ট্য, যা প্রোগ্রামে নির্দিষ্ট ত্রুটির জন্য স্পষ্ট এবং বোঝার সহজ একটি সিস্টেম প্রদান করে। এটি ত্রুটির সঠিক প্রকার চিহ্নিত করতে এবং সঠিক ব্যবস্থাপনা করতে সহায়ক। কাস্টম এক্সেপশন ব্যবহার করে, আপনি আপনার প্রোগ্রামের লজিককে আরও উন্নত এবং পরিচালনাযোগ্য করতে পারেন।