2012-06-29 11 views
11

के उत्पादन का निर्यात कैसे कर मैं एक अजगर पैकेज है जो काफी सहायता पाठ से आउटपुट मिल गया है: help(package)मैं अजगर के अंतर्निहित मदद() फ़ंक्शन

मैं एक फ़ाइल को यह सहायता पाठ निर्यात करना चाहते हैं में, प्रारूप जिसमें यह help(package)

द्वारा प्रदर्शित किया जा सकता है, मैं इसके बारे में कैसे जा सकता हूं?

+3

आप [pydoc मॉड्यूल] के बारे में जानते हैं के सभी help() पाठ है कि एक अच्छी तरह से स्वरूपित फ़ाइल Rpi.GPIO.html में आदेश help(Rpi.GPIO) से प्रस्तुत किया जाएगा, रखता है (http://docs.python.org/library/pydoc.html)? – DSM

उत्तर

5

इसमें कुछ समय hackish है (और वहाँ शायद एक बेहतर समाधान कहीं है), लेकिन यह काम करता है:

import sys 
import pydoc 

def output_help_to_file(filepath, request): 
    f = file(filepath, 'w') 
    sys.stdout = f 
    pydoc.help(request) 
    f.close() 
    sys.stdout = sys.__stdout__ 
    return 

और फिर ...

>>> output_help_to_file(r'test.txt', 're') 
1

आप मदद (मदद) करते हैं आप देखेंगे:

Help on _Helper in module site object: 

class _Helper(__builtin__.object) 
| Define the builtin 'help'. 
| This is a wrapper around pydoc.help (with a twist). 

[बाकी कतरना]

तो - आप pydoc मॉड्यूल पर विचार करना चाहिए - वहाँ एक विधि या तरीकों होने वाला है कि वापसी क्या help(something) स्ट्रिंग के रूप है ...

11

pydoc.render_doc (बात) स्ट्रिंग के रूप बात की मदद पाठ मिलता है। Pydoc.text और pydoc.html जैसे pydoc के अन्य भाग आपको फ़ाइल में लिखने में मदद कर सकते हैं।

लिनक्स में -w संशोधक का उपयोग करके वर्तमान निर्देशिका में आउटपुट को एक HTML में लिखना होगा, उदाहरण के लिए;

pydoc -w Rpi.GPIO 

खोल के वर्तमान निर्देशिका

+3

यह वास्तव में चयनित उत्तर से थोड़ा आसान है। –

+1

मुझे इस पोस्ट का उपयोग करके चुना गया उत्तर बहुत अच्छा नहीं मिला है, मैंने pydocs में थोड़ा सा शोध किया है और इस जवाब को मेरे सटीक समाधान – davidhood2

+0

के साथ संपादित किया है, धन्यवाद। मुझे नहीं पता था कि इसके साथ जाने के लिए कमांड लाइन उपयोगिता थी। –

संबंधित मुद्दे