एक समारोह से docstring हो रही है


183

मेरा निम्नलिखित कार्य है:

def my_func():
    """My docstring is both funny and informative"""
    pass

मैं डॉकस्ट्रिंग तक कैसे पहुंच सकता हूं?


13
ध्यान दें कि -o के साथ पायथन चल रहा है डॉकस्ट्रिंग्स को स्ट्रिप्स करें। यदि आप अपना कोड दूसरों को वितरित करने का इरादा रखते हैं, तो ध्यान रखें कि वे इसे उसी तरह से चला सकते हैं। यह उन लोगों को वास्तव में बहुत दुखी करेगा यदि आपका कोड डॉकस्ट्रिंग्स पर निर्भर करता है, लेकिन उस मामले को नहीं पकड़ता है जहां वे मौजूद नहीं हैं।
DNS

जवाबों:


243

अंतःक्रियात्मक रूप से, आप इसे प्रदर्शित कर सकते हैं

help(my_func)

या कोड से आप इसे पुनः प्राप्त कर सकते हैं

my_func.__doc__

1
बीटीडब्ल्यू: यह तकनीक बिल्टिन कार्यों के साथ-साथ मॉड्यूल और कक्षाएं (वस्तुओं के साथ परीक्षण सहायता) भी काम करती है - शायद काम भी कर सकती है। यह आपके अजगर खोल को एक इंटरैक्टिव हेल खोल बनाता है!
डैरन थॉमस

3
Ipython प्रॉम्प्ट पर, आप my_func कर सकते हैं ?? और यह डॉकस्ट्रिंग को भी दिखाएगा।
रोनक

1
func .__ doc__ इनलाइन आउटपुट देता है, जबकि हेल्प (func) एक पठनीय आउटपुट देता है। जवाब के लिए धन्यवाद।
imsrgadich

77

आप भी इस्तेमाल कर सकते हैं inspect.getdoc। यह __doc__रिक्त स्थान को सामान्य करके टैब को साफ करता है और आम प्रमुख स्थानों को हटाने के लिए डॉक्टर शरीर को शिफ्ट करना छोड़ दिया है।


7

Ipython या jupyter नोटबुक पर, आप उपर्युक्त सभी तरीकों का उपयोग कर सकते हैं, लेकिन मैं साथ जाता हूं

my_func?

या

?my_func

विधि हस्ताक्षर और डॉकस्ट्रिंग दोनों के त्वरित सारांश के लिए।

मैं उपयोग करने से बचता हूं

my_func??

(drostring के लिए @rohan द्वारा टिप्पणी के रूप में) और इसका उपयोग केवल स्रोत कोड की जांच करने के लिए करें

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.