प्रोग्रामिंग में बग्स (Bugs) या एरर्स (Errors) आना एकदम नॉर्मल बात है। मान लीजिए आपने यूज़र से उसकी उम्र (age) मांगी और उसने उम्र की जगह अपना नाम दर्ज कर दिया, तो आपका प्रोग्राम क्रैश (Crash) हो जाएगा! एक अच्छा लॉजिक वो है जो पहले ही एरर का अंदाज़ा लगा ले।
Try और Except ब्लॉक
पायथन में एरर हैंडलिंग try और except की मदद से की जाती है। इसका लॉजिक बहुत सीधा है - "पहले TRY करके देखो, अगर कोई दिक्कत आए तो EXCEPT ब्लॉक में उसे हैंडल कर लो।"
try:
number = int(input("कोई नंबर बताएं: "))
print("अगर आप इसे 10 से भाग देंगे तो आएगा:", 10 / number)
except ZeroDivisionError:
print("भाई, 0 से किसी नंबर को भाग नहीं दे सकते!")
except ValueError:
print("नंबर मांगा था, अक्षर क्यों डाल रहे हो?")
finally:
print("यह लाइन हमेशा रन होगी, चाहे एरर आए या न आए।")
लॉजिक इम्प्रूवमेंट: 'फाइनली' (Finally) ब्लॉक
ऊपर दिया गया `finally` ब्लॉक नेटवर्क कनेक्शन बंद करने (Network Disconnect) या फाईल क्लोज करने के काम आता है, क्योंकि ये हर हाल में रन होता ही है। अच्छी लॉजिक बिल्डिंग का मतलब है कि आपके प्रोग्राम से यूज़र कभी फ्रस्ट्रेट न हो और क्रैश के बजाय उसे सही मैसेज मिले।