Python:
डीबगर का उपयोग करना
कैसे:
चलिए, Python के बिल्ट-इन डीबगर, pdb
का उपयोग करने को तोड़ते हैं। एक फ़ाइल, buggy.py
, की कल्पना करें, जिसमें एक चालाक बग है:
def add_one(number):
result = number ++ 1
return result
print(add_one(7))
इस स्क्रिप्ट को चलाने पर, आप 8
की उम्मीद करते हैं, लेकिन यह सिर्फ एक सिंटैक्स एरर ही देती है। यह डीबगर का समय है!
अपने टर्मिनल में चलाएं:
python -m pdb buggy.py
आप डीबगर में प्रवेश करेंगे, और यह इस तरह दिखाई देगा:
> /path_to_file/buggy.py(1)<module>()
-> def add_one(number):
अधिक कोड देखने के लिए l(ist)
, अगली पंक्ति पर जाने के लिए n(ext)
, या स्क्रिप्ट को चलाने जारी रखने के लिए c(ontinue)
का उपयोग करें। जब आप त्रुटि पर पहुंचेंगे, pdb
रुक जाएगा और आपको जांच करने देगा।
number ++ 1
को number + 1
में सुधारने के बाद, फिक्स को परखने के लिए डीबगर को पुनः स्टार्ट करें।
याद रखें, मित्र कभी भी मित्रों को बिना जाल के कोडिंग करने नहीं देते। बस, कहना बहुत है।
गहन विचार
प्रोग्रामिंग के डार्क एजेज में (अर्थात जब इंटीग्रेटेड डेवलपमेंट एनवायरमेंट्स, या IDEs, हर जगह नहीं थे), डीबगर्स अक्सर स्टैंड-अलोन टूल्स होते थे जिनका उपयोग आप अपने टेक्स्ट एडिटर के बाहर करते थे। वे प्रोग्रामर्स को विभिन्न निष्पादन बिंदुओं पर अपने सॉफ्टवेयर की स्थिति की जांच करने में मदद करके बचाव में आए।
2023 तक, Python का pdb
अकेला नहीं है। लोगों मित पाइचार्म या विजुअल स्टूडियो कोड जैसे IDEs का उपयोग कर सकते हैं, जिनमें उनके अपने स्लिक डीबगर्स शामिल हैं। ये क्लिक से सेट करने योग्य ब्रेकपॉइंट्स जैसी हैंडी सुविधाएँ जोड़ते हैं, बजाय क्रिप्टिक कमांड्स टाइप करने के।
फिर ipdb
है, एक pip-इंस्टॉलेबल पैकेज जो IPython
की अच्छाई को डिबगिंग में लाता है। यह टैब कम्प्लीशन और सिंटैक्स हाईलाइटिंग के साथ, pdb
पर परफॉर्मेंस एनहैंसर्स में है।
डीबगर्स भी अपने कार्यान्वयन में विविध होते हैं। कुछ मशीन या बाइट कोड स्तर पर प्रोग्राम निष्पादन के बहुत करीब जाते हैं। अन्य, जैसे कई हाई-लेवल भाषा डीबगर्स, विशेष वातावरण में कोड चलाते हैं जो वेरिएबल स्टेट्स की निगरानी करता है और निष्पादन प्रवाह को नियंत्रित करता है।
देखें भी
Python के अपने डीबगर पर पूर्ण जानकारी के लिए, देखें:
pdb
दस्तावेज़ीकरण: https://docs.python.org/3/library/pdb.html
यदि आप विकल्पों के बारे में जिज्ञासु हैं, तो ये लिंक आपकी अच्छी सेवा करेंगे:
ipdb
रेपोजिटरी और उपयोग गाइड: https://github.com/gotcha/ipdb- विजुअल स्टूडियो कोड के साथ डिबगिंग: https://code.visualstudio.com/docs/python/debugging
- पाइचार्म डिबगिंग सुविधाएँ: https://www.jetbrains.com/help/pycharm/debugging-code.html
बग हंटिंग में खुश रहें!