পাইথনে এক্সেপশন হ্যান্ডলিংয়ে else ব্লক
try-except কনস্ট্রাকশনে
else ব্লকও যোগ করা যায়। একটি গুরুত্বপূর্ণ বিষয়
হল, else ব্লকের কোডটি তখনই কার্যকর হবে যখন
try-except-এ এর আগে কোনো এক্সেপশন ধরা পড়েনি।
ধরি আমাদের একটি তালিকা আছে:
lst = [1, 2, 3]
try-except কনস্ট্রাকশনে তালিকার নেই এমন
একটি এলিমেন্টের জন্য এক্সেপশন হ্যান্ডলিং লিখি:
try:
print(lst[4])
except IndexError:
print('error: elem is not exist')
এখন else ব্লকে তালিকার সকল এলিমেন্টের যোগফল
প্রিন্ট করার指令 দিন:
try:
print(lst[4])
except IndexError:
print('error: elem is not exist')
else:
print(sum(lst))
যদি try ব্লকের কোডটি তালিকার absent এলিমেন্ট অ্যাক্সেস করে,
তবে কনসোলে error বার্তা প্রদর্শিত হবে:
'error: elem is not exist'
এখন try ব্লকে এমন একটি এলিমেন্ট প্রিন্টের指令 দিন যা নিশ্চিতভাবে তালিকায় রয়েছে:
try:
print(lst[0])
except IndexError:
print('error: elem is not exist')
else:
print(sum(lst))
কোড এক্সিকিউট হওয়ার পর কনসোলে দুটি নম্বর প্রদর্শিত হবে:
try-এ নির্দিষ্ট된 এলিমেন্ট এবং তালিকার সকল এলিমেন্টের যোগফল:
1
6
একটি তালিকা দিন:
lst = [1, 2, 3]
শূন্য দিয়ে বিভাজনের সাথে সম্পর্কিত এক্সেপশনটি হ্যান্ডল করার জন্য কোড লিখুন। যদি এই এক্সেপশনটি না দেখা যায়, তবে যেন তালিকার দৈর্ঘ্য প্রিন্ট হয়।