繁体   English   中英

如何将Python的帮助页面直接打印到stdout?

[英]How can I print Python's help page straight to stdout?

我正在尝试编写一个Unix脚本,让我打印给定模块的Python帮助页面。 我的代码到目前为止如下:

#!/usr/bin/env python

if __name__ == "__main__":
    import sys
    if sys.argv[1].endswith(".py"):
        __import__(sys.argv[1][:-3])
        help(sys.argv[1][:-3])
    else:
        __import__(sys.argv[1])
        help(sys.argv[1])

它几乎可以按照我的需要工作 - 在一个模块上调用它会在一个类似于调用less的缓冲区中提取帮助页面。 (换句话说, help工作方式与在解释器中使用时完全一样。)

我想要的是摆脱缓冲区并直接打印到stdout,以便我可以使用该命令与其他Unix命令。 我想知道是否有办法做到这一点,如果有的话,怎么样?

这对我有用:

import pydoc

import math # test
print(pydoc.render_doc(math))

试试这个?

import pydoc

pydoc.help(xrange)

或者如果你想要它的字符串格式

pydoc.getdoc(xrange)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM