0:00
क्या बात है आप तो Day 38 में भी वापस आ चुके ह�
0:03
आज Custom Errors के बारे में आपको बताऊंगा अगर आपकी अपनी एक Python Application ह�
0:06
और आप चाहते हो कि एक particular action पर throw कर दो आप एक error
0:11
तो वो किस तरह करोगे आप raise keyword का इस्तेमाल कर सकते हो और Custom Errors throw कर सकते ह�
0:15
बतातो आप लोग को इस वीडियो में चलते हैं कंप्यूटर स्क्रीन में एंड लेट्स केट स्टार्टे�
0:20
तो यहाँ पर मैंने क्या किया है कि ए�
0:34
रैपल बना रखी है आप लोग के लिए और यहाँ पर मैं जल्दी से क्या करूँगा रैपल के साथ साथ एक फाइल खोलूँगा पाइथन फाइल ताकि मैं आपक�
0:42
action में दिखा सकूं कि किस तरह से इस सारे काम किये जाते है�
0:46
तो मैं ज़रा इसको close करूँगा और यहाँ पर मैं main.py खुलूँग�
0:50
कहा गई मेरी main.py यह रही और इसको मैं ज़रा यहाँ प�
0:54
custom error raise करके आप लोगों को दिखाऊंगा अब देखो क्या होता है जब भी आपका program में कोई error आ जाता ह�
0:59
कोई issue आ जाता है किसी भी तरह का तब error आता है लेकिन आप खुद से भी तो error raise कर सकते ह�
1:05
अब आप लोग बोलोगे कि यार मैं परिशानी क्यों create करूँगा मैं error क्यों raise करूँग�
1:10
तो यह error raise करने का एक सबसे बड़ा reason यह होगा ताकि program रुक जाए और आगे कुछ और unexpected ना हो जाए, let me explain
1:17
तो देखो यहाँ पर मैं क्या करता हूँ, मैं ज़रा console को यहाँ खड़ा कर देता हूँ side में
1:21
मैं यहाँ पर simply क्या करूँगा, लिखूँगा a is equal to int
1:26
और मैं यहाँ पर लिखूँगा input और मैं लिखूँगा enter any value between 5 and 9
1:34
मान लो मैंने ऐसा बोला मैंने बोला user को बोल रहा है कि मैं 5 और 9 के बीच में ही value को enter करना ह�
1:40
तो मैं यहीं के यहीं कह दूँगा कि if a is less than 5
1:45
and या फिर or मैं कहूँगा यहाँ पर or a is greater than 9
1:50
तब मैं क्या करना चाहूँगा, मैं simply гाउंगा कि यार raise value error और मैं आपर काउंगा value should be between 5 and 9 ठीक है, तो मैं कुछ इस तरह का काम करूँगा, और ये करने का फाइदा क्या होगा, ये करने का फाइदा simply ये होगा कि यार मैं नहीं चाहता कि आगे कुछ भी program चले मेरा, और यहा�
2:20
अब देखो यहाँ पर enter any value between 5 and 9 यहाँ पर है मालो मैं करता हूँ यहाँ पर 2 मैंने enter मारा error आ गय�
2:26
मतलब मैं कभी कोई चाहूँगा देखो error क्या है errors अच्छे हैं जैसे दाग अच्छे हैं सुनाओगा आपने surf excel का head
2:32
errors errors error line number 5 error line number 12 line number 12
2:48
बारा तक जाई क्यों रहा है प्रोग्राम हमारा मैं यहीं पर रोक सकता हूँ तो जो अच्छ�
2:51
प्रोग्रामर्स होते हैं अच्छे कोडर्स होते हैं वो वहीं पर रोक देते हैं जैसे शक्तिमा�
2:55
रोक देते हैं ना ठेरो उसी तरह से यहाँ पर मैंने क deserving यह वाल्यू एरर है क्योंकि तुमने जो वाल्यू एंटर करिए पांच और नौ के बीच में नहीं है पांच और नौ के बीच में अगर होगी वाल्यू तब हम आगे बढ़ेंगे कुछ ऐसा समझ लो कि आपसे किसी ने कह दिया मानलो मम्मी ने कह दिया कि �
3:27
नहीं लेकर जाओगे ना, obviously वहीं पर रुक जाओगे, इसी तरह से आपका program भी रुक जाना चाह pandemia नहीं लेकर रुक जाओगे, इसी तरह से आपका program भी रुक जाना चाहिए, वहीं पर, क्योंकि अगर कोई घलत चीज हो गयी है, unexpected हो गया है, तो आप नहीं चाहोगे कि continue किया �
3:57
पाइथन को यह कैसे बता लेगा आपको पांच और नौ के बीच में वैल्यू चाहिए वह तो नहीं पता लगा सकता ना पाइथन तो पांच और नौ के बीच में वैल्यू आपको चाहिए यह अपने प्रोग्राम को इस गलती से रोकने के लिए आपको कस्टम एरर रेस करना �
4:27
important to handle exceptions, भाई, exception को handle करना, क्यों important है, इसलिए important है
4:32
क्यों important है, कि अगर कोई गलती हो जाती है, मतलब, मान लो, आपने को syntax error कर दिया
4:37
तो आप लोग चाहोगे, कि आप उसको handle करो, ताकि नीचे की चीज चल जाए
4:41
और उसका अगर, उल्टा बात करूँ मैं, यानि की other way round मैं एक और अगर आपस�
4:46
बात करूँ, एक और case आपको दूँ कि यार आपने एक program लिखा है, आप चाहते ह�
4:50
कि एक particular चीज हो program के दोरान, वो नहीं होती है user ने कहा नहीं करता मैं 5 और 9 के बीच मे�
4:56
आप वहीं पर रोक दो, आप कहोगे की, बाई जाब ऐसे नहीं चलेगा, 5 और 9 के बीच में करनी पड़ेगी, वारियो एंटर, वरना मैं एरर दूँगा
5:03
प्रोग्रामर कहता है, पाइथन तो पाइथन रहा, मैं रोकूंगा तुमको,
5:28
तब उसको किस तरह से handle किया जाए क्योंकि यार अगर मान लो मेरा program लिखा ह�
5:33
जो कि एक server से data लेकर आ रहा है अब मान लो server में आग लग जाती है तो data तो आ नहीं सकत�
5:37
अब data क्योंकि आ नहीं सकता इसी लिए आप लोगों को उस error को वहीं पर handle करना होग�
5:43
अपने प्रोग्राम को वहीं पर रुकना होगा, जो कि यार डेटा दवा नहीं सकता, तो आगे डेटा प्रोसेसिंग का प्रोग्राम चलाने का क्या पॉइंट है
5:49
कोई पॉइंट नहीं है, तो वहीं पर हम प्रोग्राम को रुकना चाहेंगे, यह सिक्के का एक पहलू हो गया, सिक्के का दूसरा पहलू जो है, वो यह है कि मान लो कि आपने प्रोग्राम लिखा है, यूजर ने कुछ input दिया, यूजर ने दे दिया, गलत input, तो यूजर ने क्योंकि गलत input दे दिया, वहीं पर error raise कर दो, ताकि प्रोग्राम रुक जाए, �
6:21
एक है हैंडलिंग एरर रेजिंग कस्टम एरर तो यह था रेजिंग कस्टम एरर आई हूप कि आप लोग इसी समझ मे�
6:27
आगे अब एक और चीज होती है जिसको आप लोग सोचकर मैं चाहूंगा वर्ल्म ना हो क्योंकि यह शायद आपको ओलम क�
6:34
शायद ठीक है बट मैं आपको फिर भी बताऊंगा डिफाइनिंग कस्टम एक्सेप्शन देखो अगर हम अभी आप देखो वैल्य�
6:40
एरर रेस कर सकते हैं लोग सिंटेक्स एरर रेस कर सकते हैं अब लोग मेमोरी एरर रेस कर सकते हैं और कौन-कौन स�
6:46
कर सकते हैं आप लोग यहां पर लिख दो पाइथन एरर क्लासेस ठीक है आप लोग यहां पर बिल्ड एन एक्सेप्शन ज�
6:52
है उनकी लिस्ट मिल जाएगी ठीक है अब यह सारे जो बिल्ड एन एक्सेप्शन से इनको पढ़कर रेस कर सकते हो फ्लोटिं�
6:58
एरर है और फिर आपका इंपोर्ट एरर है मॉडील नोट फाउंड एरर है इंडेक्स एरर की एरर और भी मेमोरी एरर भी �
7:05
गया देखो मैंने भी बोला था ठीक है मेमोरी एरर तब आएगा जब आप लोग डाटा अनैलिटिक सोड़ी बहुत करोगे और आ�
7:10
जो है बहुत सारे डेटा लोड कर लोगे राम में राम कम पड़ जाएगी फिर उसके बाद आपको आएगा ठीक है यह कभी-कभ�
7:15
गलती की वजह से भी आता है क्योंकि अगर आपने मान लोग टीवी जब डेटा लोड करने का कमांड इशू कर दिया तो कितन�
7:21
आपकी आ जाएगा में बड़ी अब में दाई सो जीबी के सर्वर पर मेमोरी अरर आया हुआ ठीक है आए वह ठीक है अब यहा�
7:28
पर देखो आप यहां पर हम क्या करते हैं जब मैं कहता हूं डिफाइनिंग कस्टम एक्सेप्शन तो मैं यहां पर क्य�
7:33
है हम गए देखिए यार कस्टम एक्सेप्शन को हम डिफाइन कर सकते हैं एक नई क्लास बनाएंगे लोग यह क्लास त�
7:38
बताये नहीं क्या होता है यह क्या कर रहे हो तो यार देखो बात कुछ ऐसी है कि मैं जिससे आपको यहां बतान�
7:43
करो कि सर यही नहीं कर सकते मान लो मैं चाहता हूं कि हैरी इज एंग्री एरर मान लो एक बात है ठीक ह�
7:50
funny example example server is off error error data center server off power server
8:09
है तो मैं चाहूंगा कि मैं अपने प्रोग्राम में रेस कर दूंगे एरर एक एरर होगा मेरे लिए ठीक है मेर�
8:16
ऑर्गनाइजेशन के लिए एरर होगा कि सर्वर इज ऑफ एरर तो मैं क्या करूंगा किसी एक कस्टम एरर से इसक�
8:22
support करते हुए इनहेरिट करते हुए इन फैक्ट इनहेरिट में आपको बताऊंगा क्या होता है कि एक क्लास है ज�
8:27
हमारी बेसर वाली क्लास है उससे हम शुरू करते हुए नई क्लास बनाएंगे मैं गर्न और लगेगा लेकिन अभी लगेग�
8:33
बता दूंगा तो नहीं लगेगा हम एक नया एरर बनाएंगे एक नई एरर क्लास बनाएंगे उसमें अलग-अलग चीजें हम लोग यहा�
8:40
पर डिफाइन करेंगे और डिफाइन करने के बाद यह हमारा एक नया तरह का एरर बन जाएगा तो हम इस तरह का ऐडर रेज क�
8:46
कर सकते हैं ठीक है क्या कर सकते हैं इस तरह का रेस कर सकते हैं और इस तरह का यह जो मैसेज है यह वगैर�
8:52
डाल सकते हैं ठीक है समझ गए आप लोग तो इस तरह से आप लोग कस्टम एरर बना सकते हो कस्टम एक्सेप्शन बन�
8:58
यूज़ पूर्विक समझ यू माइट वांट टो समझ विद पर्टिकलर एक्सेप्शन इस रेज फॉर एग्जाम्पल सेंडिं�
9:03
एन एरर यह तो यह मैंने इस पूरी बात के लिए लिखा है कि रिजिंग कस्टम अरेड क्यों इंपोर्टेंट है बट आ�
9:08
कि आप लोग इस चीज समझ में आ गई और आप लोग custom error सब लोग raise कर पाएंग�
9:12
तो मैं चाहता हूँ एक quick quiz आप लोग करो जिस तरह से मैंने आपर बताया था कि 5 और 9 के बीच में अगर हमारा input है तो error raise होता ह�
9:19
अब यहाँ पर मान लो user ने लिखा quit Q U I T quit
9:24
तब यह error नहीं आना चाहिए आपको एक program लिखना है बिल्कुल इसको rewrite करना ह�
9:28
अगर user ने लिखा Q U I T small letters में तब यह error नहीं आना चाहि�
9:34
लेकिन उसके अलावा कोई भी string डाल दी जो की integer नहीं है तब user को error मिलना चाहि�
9:38
तो क्या भी ये program लिख सकते हो मेरे लिए raplet के comment section में मुझे बतान�
9:43
एक rapple बना कर देखो आलस जो है किसी को भी लग सकता है ठीक है आलस से लड़ना पड़ता है औ�
9:48
rapple बना लो देखो मतलब you will never रिग्रेट बना लो रैपल ठीक है आप लोग इन पैक खुश होगे कि यार मैंने रैपल बनाई तो मेरी प्राक्टि�
9:55
हुई बनाकर कमेंट सेक्शन में मुझे दो ठीक है मुझे दिखाओ रैपलेट की कमेंट सेक्शन में देना मैं दे�
10:02
करूंगा ठीक है क्योंकि रेपलेट पर आते-ाते लोगों को टाइम लगेगा आलस आएगा तो कुछ लोग फिल्टर हो जाएंगे त�
10:07
बहुत कम लोग होंगे जो कि रापर बनाएंगे इस चीज की और मैं देखना पसंद करूंगा ठीक है मैं उन लोगों क�
10:11
तो देखना पसंद करूँगा जिनने मनाई है तो अभी के लिए इस वीडियो में इतना है गैस अगर आप लोगों न�
10:15
अभी तक यह access नहीं करी है playlist तो इसको जरूर access करना thank you so much guys for watching this
10:19
video and I will see you next time