অন্যান্য উচ্চ-স্তরের ভাষার মতো, পাইথনেও কিছু ব্যতিক্রম রয়েছে। যখন একটি সমস্যা দেখা দেয়, এটি একটি ব্যতিক্রম উত্থাপন করে। বিভিন্ন ধরনের ব্যতিক্রম আছে যেমন ZeroDivisionError, AssertionError ইত্যাদি। সমস্ত ব্যতিক্রম ক্লাস বেসএক্সেপশন ক্লাস থেকে নেওয়া হয়েছে।
কোডটি ব্যতিক্রমগুলিতে তৈরি হতে পারে, অথবা আমরা এই ব্যতিক্রমগুলিকে কোডে বাড়াতে পারি। ব্যবহারকারী ব্যতিক্রম থেকে তাদের নিজস্ব ব্যতিক্রম পেতে পারেন ক্লাস, অথবা ব্যতিক্রম এর অন্য কোনো শিশু শ্রেণি থেকে ক্লাস।
BaseException হল অন্য সব ব্যতিক্রমের বেস ক্লাস। ইউজার ডিফাইড ক্লাস এই ক্লাস থেকে সরাসরি নেওয়া যাবে না, ইউজার ডিফাইড ক্লাস বের করতে হলে আমাদের এক্সেপশন ক্লাস ব্যবহার করতে হবে।
পাইথন ব্যতিক্রম শ্রেণিবিন্যাস নিচের মত।
- BaseException
- ব্যতিক্রম
- পাটিগণিত ত্রুটি
- FloatingPointError
- ওভারফ্লো ত্রুটি
- জিরোডিভিশন ত্রুটি
- Assertion Error
- AttributeError
- বাফার ত্রুটি
- EOFERRor
- আমদানি ত্রুটি
- ModuleNotFoundError
- লুকআপ ত্রুটি
- সূচী ত্রুটি
- কী ত্রুটি
- মেমরি ত্রুটি
- NameError
- UnboundLocalError
- OSError
- BlockingIOError
- ChildProcess Error
- সংযোগ ত্রুটি
- ব্রোকেন পাইপ ত্রুটি
- সংযোগ বাতিল করা ত্রুটি
- সংযোগ প্রত্যাখ্যান ত্রুটি
- ConnectionResetError
- FileExistsError
- FileNotFoundError
- বিঘ্নিত ত্রুটি
- IsADirectoryError
- NotADirectoryError
- অনুমতি ত্রুটি
- ProcessLookupError
- টাইমআউট ত্রুটি
- পাটিগণিত ত্রুটি
- রেফারেন্স ত্রুটি
- রানটাইম ত্রুটি
- Not Implemented Error
- পুনরাবৃত্তি ত্রুটি
- StopIteration
- StopAsyncIteration
- সিনট্যাক্স ত্রুটি
- ইন্ডেন্টেশন ত্রুটি
- TabError
- ইন্ডেন্টেশন ত্রুটি
- সিস্টেম ত্রুটি
- TypeError
- ValueError
- ইউনিকোড ত্রুটি
- UnicodeDecodeError
- UnicodeEncodeError
- UnicodeTranslateError
- ইউনিকোড ত্রুটি
- সতর্কতা
- বাইটসওয়ার্নিং
- অবঞ্চনার সতর্কতা
- ভবিষ্যৎ সতর্কতা
- আমদানি সতর্কতা
- Pending Deprecation Warning
- রিসোর্স ওয়ার্নিং
- রানটাইম সতর্কতা
- সিনট্যাক্স সতর্কতা
- ইউনিকোড সতর্কতা
- ব্যবহারকারী সতর্কতা
- জেনারেটর এক্সিট
- কীবোর্ড বাধা
- সিস্টেম এক্সিট
সমস্যা - এই সমস্যায় এক শ্রেণীর কর্মচারী রয়েছে। শর্ত হল, কর্মচারীর বয়স হতে হবে ১৮ বছরের বেশি।
আমাদের একটি ব্যবহারকারী সংজ্ঞায়িত ব্যতিক্রম ক্লাস তৈরি করা উচিত, যা ব্যতিক্রম শ্রেণীর একটি চাইল্ড ক্লাস।
উদাহরণ কোড
class LowAgeError(Exception): def __init__(self): pass def __str__(self): return 'The age must be greater than 18 years' class Employee: def __init__(self, name, age): self.name = name if age < 18: raise LowAgeError else: self.age = age def display(self): print('The name of the employee: ' + self.name + ', Age: ' + str(self.age) +' Years') try: e1 = Employee('Subhas', 25) e1.display() e2 = Employee('Anupam', 12) e1.display() except LowAgeError as e: print('Error Occurred: ' + str(e))
আউটপুট
The name of the employee: Subhas, Age: 25 Years Error OccurredThe age must be greater than 18 years