【问题标题】:Python language API [closed]Python语言API [关闭]
【发布时间】:2010-09-13 07:09:37
【问题描述】:

我从来自 java 的 Python 开始。

我想知道是否存在类似于 JavaDoc API 的东西,我可以在其中找到类、它的方法以及如何使用它的示例。

我发现在 Python(命令行)中使用 help(thing) 非常有帮助

我也发现了这个:

http://docs.python.org/2/

https://docs.python.org/2/py-modindex.html

但是当你已经有了你正在寻找的类名时,它似乎会有所帮助。在 JavaDoc API 中,我有所有的类,所以如果我需要一些东西,我会向下滚动到一个“听起来像”我需要的类。或者有时我只是浏览所有类以查看它们的作用,当我需要一个功能时,我的大脑会想起我 我们在 javadoc 中看到过类似的东西还记得吗!?

但我似乎没有在 Python 中找到类似的东西(尚未),这就是我发布这个问题的原因。

顺便说一句,我知道我最终会读到这个:

https://docs.python.org/2/library/

但是,好吧,我认为不是今天。

【问题讨论】:

  • 已关闭。 pydoc 和 pydocgui.pyw 是答案

标签: python reference documentation python-2.x


【解决方案1】:

pydoc?

我不确定您是否正在寻找更复杂的东西,但它确实可以解决问题。

【讨论】:

    【解决方案2】:

    标准的 python 库有很好的文档记录。尝试跳入 python 并导入一个模块说“os”并运行:

    import os   
    help(os)
    

    这会读取模块中每个项目的文档字符串并显示它。这也正是 pydoc 会做的事情。

    编辑:epydoc 可能正是您正在寻找的:

    【讨论】:

    • 是的,正如我所说,这就是我现在正在使用的。但是有没有办法浏览所有标准类,比如:java.sun.com/javase/6/docs/api No 也是一个可以接受的答案:)
    【解决方案3】:

    我从 Python.org 下载了 Python 2.5,它不包含 pydoc。

    Directorio de C:\Python25
    
    9/23/2008  10:45 PM    <DIR>          .
    9/23/2008  10:45 PM    <DIR>          ..
    9/23/2008  10:45 PM    <DIR>          DLLs
    9/23/2008  10:45 PM    <DIR>          Doc
    9/23/2008  10:45 PM    <DIR>          include
    9/25/2008  06:34 PM    <DIR>          Lib
    9/23/2008  10:45 PM    <DIR>          libs
    2/21/2008  01:05 PM            14,013 LICENSE.txt
    2/21/2008  01:05 PM           119,048 NEWS.txt
    2/21/2008  01:11 PM            24,064 python.exe
    2/21/2008  01:12 PM            24,576 pythonw.exe
    2/21/2008  01:05 PM            56,354 README.txt
    9/23/2008  10:45 PM    <DIR>          tcl
    9/23/2008  10:45 PM    <DIR>          Tools
    2/21/2008  01:11 PM             4,608 w9xpopen.exe
              6 archivos        242,663 bytes
    

    但它有(我猜是替代品)pydocgui...

    C:\Python25>dir Tools\Scripts\pydocgui.pyw
    
    10/28/2005  07:06 PM               222 pydocgui.pyw
               1 archivos            222 bytes
    

    这会启动一个网络服务器并显示我正在寻找的内容。平台附带的所有模块以及所有类。

    Doc 目录包含与以下内容相同的内容:

    http://docs.python.org/

    非常感谢您指导我使用 pydoc。

    【讨论】:

      【解决方案4】:

      顺便说一句,我知道我最终会 会读到这个:

      http://docs.python.org/lib/lib.html

      但是,好吧,我认为不是今天。

      我建议你犯了一个错误。 lib doc 包含“类、它的方法以及如何使用它的示例”。它您正在寻找的。

      我一直都在使用 Java 和 Python。深入了解图书馆文档,您会找到所需的一切。

      【讨论】:

      • 是的,我知道。但是当试图弄清楚方法签名是什么时,去浏览那个文件,去向下,向上等等并不是很有帮助。我并不是说我不会读它。它看起来很有趣。但是..这一天会到来的:P 谢谢你1+。
      • "去浏览那个文件,去向下,向上等不是很有帮助。"什么?你在说什么?这是一个网站。收藏它。
      • 我是说在寻找方法签名时,扫描整个文档至少不是获得答案的最快方法。就是这样。
      • 我完全同意搜索速度很慢。我使用谷歌和书签;他们很快。
      【解决方案5】:

      您可以设置环境变量 PYTHONDOCS指向安装python文档的位置。

      在我的系统上,它在 /usr/share/doc/python2.5

      因此,您可以在 shell 配置文件 或其他地方定义此变量,具体取决于您的系统:

      导出 PYTHONDOCS=/usr/share/doc/python2.5

      现在,如果你打开一个交互式 python 控制台,你可以调用帮助系统。例如:

      >>> help(Exception)
      >>> Help on class Exception in module exceptions:
      
      >>> class Exception(BaseException)
      >>>  |  Common base class for all non-exit exceptions.
      >>>  |  
      >>>  |  Method resolution order:
      >>>  |      Exception
      

      文档在这里:

      https://docs.python.org/library/pydoc.html

      【讨论】:

        【解决方案6】:

        Here 是 Python 中所有模块的列表,不确定这是否是您真正想要的。

        【讨论】:

          【解决方案7】:

          如果您在 Windows 上工作,ActiveState Python 随附文档,包括可搜索帮助文件中的库参考。

          【讨论】:

            【解决方案8】:

            也试试

            pydoc -p 11111
            

            然后在浏览器中输入http://localhost:11111

            编辑:当然,您可以使用任何其他值作为端口号,而不是 11111

            【讨论】:

              【解决方案9】:

              它不会直接回答你的问题(所以我可能会被降级),但你可能对Jython感兴趣。

              Jython 是用 100% 纯 Java 编写的高级、动态、面向对象语言 Python 的实现,并与 Java 平台无缝集成。因此,它允许您在任何 Java 平台上运行 Python。

              由于您来自 Java,Jython 可以帮助您利用 Python,同时仍然允许您使用您的 Java 知识。

              【讨论】:

              • 没关系。我之前尝试过 Jython。但由于 Java api 在那里,我实际上只是在其他语言中使用 java,这很好,如果我需要的是集成。但就我而言,我正在寻找有关 Python 平台本身的文档。 Pydoc 是我需要的。谢谢。