首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何导出Python内置help()函数的输出

如何导出Python内置help()函数的输出
EN

Stack Overflow用户
提问于 2012-06-30 00:31:54
回答 7查看 9.6K关注 0票数 22

我有一个python包,它输出了相当多的帮助文本:help(package)

我想以help(package)显示的格式将此帮助文本导出到文件中

我该怎么做呢?

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2012-06-30 01:05:38

这有点老生常谈(而且可能有更好的解决方案),但这是有效的:

代码语言:javascript
复制
import sys
import pydoc

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

然后..。

代码语言:javascript
复制
>>> output_help_to_file(r'test.txt', 're')
票数 12
EN

Stack Overflow用户

发布于 2012-06-30 01:35:25

pydoc.render_doc(thing)以字符串形式获取thing的帮助文本。pydoc的其他部分,如pydoc.text和pydoc.html,可以帮助您将其写入文件。

在linux中使用-w修饰符将把输出写到当前目录中的html,例如;

代码语言:javascript
复制
pydoc -w Rpi.GPIO

将命令help(Rpi.GPIO)显示的所有help()文本放入一个格式良好的文件Rpi.GPIO.html中,该文件位于外壳程序的当前目录中

票数 20
EN

Stack Overflow用户

发布于 2018-08-17 16:47:13

这是一个老问题,但较新的recommended通用解决方案(针对Python 3.4+)用于编写print()到终端使用contextlib.redirect_stdout的函数的输出

代码语言:javascript
复制
import contextlib

def write_help(func, out_file):
    with open(out_file, 'w') as f:
        with contextlib.redirect_stdout(f):
            help(func)

使用示例:

代码语言:javascript
复制
write_help(int, 'test.txt')
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11265603

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档