Python文档生成工具pydoc

在Python中有很多很好的工具来生成字符串文档(docstring),比如说: epydoc、doxygen、sphinx,但始终觉得pydoc还是不错的工具,用法非常简单,功能也算不错,本文主要介绍pydoc.

pydoc是Python自带的模块,主要用于从python模块中自动生成文档,这些文档可以基于文本呈现的、也可以生成WEB 页面的,还可以在服务器上以浏览器的方式呈现!

【用法】

Windows下:

D:\&;python -m pydoc <modulename> # 比如说: python -m pydoc math

-m参数:Python以脚本的方法运行模块

Linux/Unix下:$ pydoc <modulename># 比如说: pydoc 【帮助】$ pydoc -hpydoc – the Python documentation toolpydoc <name> …Show text documentation on something. <name> may be the name of aPython keyword, topic, function, module, or package, or a dottedreference to a class or function within a module or module in apackage. If <name> contains a '/', it is used as the path to aPython source file to document. If name is 'keywords', 'topics',or 'modules', a listing of these things is displayed.pydoc -k <keyword>Search for a keyword in the synopsis lines of all available modules.pydoc -p <port>Start an HTTP server on the given port on the local machine.pydoc -w <name> …Write out the HTML documentation for a module to a file in the currentdirectory. If <name> contains a '/', it is treated as a filename; ifit names a directory, documentation is written for all the contents.【参数 -p】在本地机器上,按照给定的端口启动HTTP,,

D:\&;python -m pydoc -p 1234 #比如说: 端口为1234

pydoc server ready at :1234/

pydoc server stopped

在IE中输入::1234/,效果如图:

【参数 -k】在所有可用的模块中按关键字搜索

$ pydoc -k xml.saxxml.sax (package) – Simple API for XML (SAX) implementation for Python.xml.sax._exceptions – Different kinds of SAX Exceptionsxml.sax.expatreader – SAX driver for the pyexpat C module. This driver works withxml.sax.handler – This module contains the core classes of version 2.0 of SAX for Python.xml.sax.saxutils – A library of useful helper classes to the SAX classes, for thexml.sax.xmlreader – An XML Reader is the SAX 2 name for an XML parser. XML Parsers【参数 -w】将指定模块的文本字符串生成HTML格式

比如说,在Window下面,执行下面命令:

D:\Learn\Python>python -m pydoc math -w math.html # math是模块名,-w:写那么在D:\Learn\Python目录下会生成math.html文件,显示如下:

因为是自带的模块,所以右上角显示(built-in)字样

【例子】自写的模块my_doc.py

'''Showoff features of Pydoc moduleThis is easy module to demonstrate docstrings'''__authors__ = 'Alice & Fred'__version__ = 'version 1.10'__license__ = 'Copyright…'class MyClass:'''Demonstrate Class Docstrings'''def __init__(self, spam=1, eggs=2):'''Set the default attributevalues onlyKeyword arguments:spam – a processed meat producteggs – a fine breakfast for lumberjacks'''self.spam = spamself.eggs = eggsdef square(x):'''Square of the param <x>'''return x * x执行命令:D:\Learn\Python> python -m pydoc my_doc执行结果:Help on module my_doc:NAMEmy_docFILEd:\learn\python\my_doc.pyDESCRIPTIONShowoff features of Pydoc moduleThis is easy module to demonstrate docstringsCLASSESMyClassclass MyClass| Demonstrate Class Docstrings|| Methods defined here:|| __init__(self, spam=1, eggs=2)|Set the default attributevalues only|Keyword arguments:|spam – a processed meat product|eggs – a fine breakfast for lumberjacksFUNCTIONSsquare(x)Square of the param <x>DATA__authors__ = 'Alice & Fred'__license__ = 'Copyright…'__version__ = 'version 1.10'VERSIONversion 1.10执行命令:d:\Learn\Python>python -m pydoc -w my_doc my_doc.htmlwrote my_doc.htmlno Python documentation found for 'my_doc.html'执行结果:

官方文档:

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

别人失去了信心,他却下决心实现自己的目标。

Python文档生成工具pydoc

相关文章:

你感兴趣的文章:

标签云: