कोड के कुछ हिस्सों को समझने के लिए हम एक पायथन प्रोग्राम में कोड पर टिप्पणी कर सकते हैं। लेकिन टिप्पणियों और टिप्पणी के विभिन्न हिस्सों को खोजने के लिए हमें खोज (सीटीएल + एफ) का उपयोग करने की आवश्यकता है और हम कई पंक्तियों के माध्यम से स्क्रॉल करते हैं। साथ ही हमारे पास यह जानने का तत्काल तरीका नहीं है कि किसी दिए गए शब्द को कोड के कितने सेक्शन आदि से जोड़ा जा रहा है। इस मुद्दे को हल करने के लिए, हमारे पास पाइथन डॉकस्ट्रिंग है जो फ़ंक्शन, मॉड्यूल, क्लास या विधि की परिभाषा के तुरंत बाद स्ट्रिंग्स तक पहुंचता है।
एक डॉकस्ट्रिंग प्रिंट करें
__doc__ विशेषता स्वचालित रूप से पाइथन ऑब्जेक्ट के नाम से जुड़ी होती है जब इसे उस ऑब्जेक्ट की परिभाषा के तुरंत बाद घोषित किया जाता है। नीचे दिए गए उदाहरण जो इसे स्पष्ट करते हैं।
उदाहरण
def Add_nums(x): '''Ada a number to itself.''' return x + x print(Add_nums.__doc__)
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
Ada a number to itself.
सिंगल लाइन बनाम मल्टीलाइन डॉक्सरिंग्स
सिंगल-लाइन डॉकस्ट्रिंग एक लाइन के होते हैं और उन्हें बहुत अधिक वर्णनात्मक नहीं होना चाहिए। वे स्ट्रिंग की शुरुआत और अंत में ट्रिपल कोट्स के भीतर संलग्न हैं। ऊपर दिया गया उदाहरण सिंगल लाइन डॉकस्ट्रिंग है।
मल्टी-लाइन डॉकस्ट्रिंग
कभी-कभी हमें अधिक विवरण में मॉड्यूल या फ़ंक्शन का वर्णन करने की आवश्यकता हो सकती है। उस स्थिति में हम मल्टी-लाइन डॉकस्ट्रिंग का उपयोग करते हैं। वे एक पंक्ति वाली डॉकस्ट्रिंग की तरह एक सारांश पंक्ति दिखाते हैं और फिर एक रिक्त रेखा, उसके बाद एक अधिक विस्तृत विवरण दिखाते हैं।
उदाहरण
def Fibonacci(n): '''The Fibonacci numbers are the numbers in the following integer sequence. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, .''' return x + x print(Fibonacci.__doc__)
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
The Fibonacci numbers are the numbers in the following integer sequence. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, .
इन-बिल्ट पायथन ऑब्जेक्ट्स का डॉकस्ट्रिंग
हम __doc__ के साथ वर्ग नाम का उपयोग करके पाइथन ऑब्जेक्ट्स जैसे फ़ंक्शन, मॉड्यूल इत्यादि से जुड़े दस्तावेज़ों को आसानी से एक्सेस कर सकते हैं।
उदाहरण
print(list.__doc__)
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
Built-in mutable sequence. If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.
डॉकस्ट्रिंग में इंडेंटेशन
डॉकस्ट्रिंग की पहली पंक्ति (यानी, पहली नई लाइन तक) में कोई भी इंडेंटेशन महत्वहीन और हटा दिया जाता है। डॉकस्ट्रिंग में बाद की पंक्तियों के सापेक्ष इंडेंटेशन को बरकरार रखा जाता है। संपूर्ण डॉकस्ट्रिंग को उसकी पहली पंक्ति के उद्धरणों के समान ही इंडेंट किया गया है।