🧠 Exception কী?
Exception হলো প্রোগ্রাম চলাকালীন ঘটে যাওয়া ভুল (Runtime Error),
যার কারণে প্রোগ্রাম হঠাৎ বন্ধ হয়ে যেতে পারে।
উদাহরণ:
- ZeroDivisionError
- FileNotFoundError
- ValueError
- TypeError
👉 Exception Handling ব্যবহার করে আমরা প্রোগ্রাম ভেঙে না ফেলে সুন্দরভাবে এরর হ্যান্ডেল করতে পারি।
🔹 try–except এর মৌলিক গঠন
try:
# সন্দেহজনক কোড
except:
# এরর হলে যা হবে🔹 সাধারণ উদাহরণ
try:
a = int(input("Enter a number: "))
b = 10 / a
print(b)
except:
print("ভুল ইনপুট বা শূন্য দিয়ে ভাগ করা হয়েছে")🔹 নির্দিষ্ট Exception ধরা
try:
x = int("abc")
except ValueError:
print("ValueError ঘটেছে")🔹 একাধিক Exception হ্যান্ডেল করা
try:
a = int(input("Enter number: "))
print(10 / a)
except ZeroDivisionError:
print("শূন্য দিয়ে ভাগ করা যাবে না")
except ValueError:
print("সংখ্যা ইনপুট দিতে হবে")🔹 else ব্লক
যদি কোনো এরর না হয়, তখন else চলে।
try:
num = int(input("Enter number: "))
print(10 / num)
except Exception:
print("Error occurred")
else:
print("কোনো এরর হয়নি")🔹 finally ব্লক
এরর হোক বা না হোক, finally সবসময় চলে।
try:
file = open("data.txt", "r")
print(file.read())
except FileNotFoundError:
print("ফাইল পাওয়া যায়নি")
finally:
print("প্রোগ্রাম শেষ")🔹 Custom Exception তৈরি করা
class AgeError(Exception):
pass
try:
age = int(input("Enter age: "))
if age < 18:
raise AgeError
print("Eligible")
except AgeError:
print("Age must be 18 or above")🔹 raise কীওয়ার্ড
x = -5
if x < 0:
raise ValueError("Negative value not allowed")🔹 বাস্তব জীবনের উদাহরণ
def withdraw(balance, amount):
if amount > balance:
raise Exception("Insufficient balance")
return balance - amount
try:
print(withdraw(5000, 7000))
except Exception as e:
print(e)❌ সাধারণ ভুল
- সব Exception একসাথে catch করা
- নির্দিষ্ট Exception না ধরা
- except ফাঁকা রাখা
🏁 উপসংহার
এই পর্বে তুমি শিখলে—
✅ Exception কী
✅ try–except ব্যবহার
✅ একাধিক exception হ্যান্ডেল
✅ else ও finally
✅ custom exception
✅ raise keyword







