在Python中有很多很好的工具来生成字符串文档(docstring),比如说: epydoc、doxygen、sphinx,但始终觉得pydoc还是不错的工具,用法非常简单,功能也算不错,本文主要介绍pydoc.
pydoc是Python自带的模块,主要用于从python模块中自动生成文档,这些文档可以基于文本呈现的、也可以生成WEB 页面的,还可以在服务器上以浏览器的方式呈现!
[b]【用法】[/b]
Windows下:
[url=http://localhost:1234/]http://localhost:1234/[/url]
pydoc server stopped
在IE中输入:http://localhost:1234/,效果如图:
[img]http://files.jb51.net/file_images/article/201506/201562170253630.png?20155217355[/img]
【参数 -k】在所有可用的模块中按关键字搜索
$ pydoc -k xml.sax
xml.sax (package) - Simple API for XML (SAX) implementation for Python.
xml.sax._exceptions - Different kinds of SAX Exceptions
xml.sax.expatreader - SAX driver for the pyexpat C module. This driver works with
xml.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 the
xml.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文件,显示如下:
[img]http://files.jb51.net/file_images/article/201506/201562170406459.png?20155217414[/img]
因为是自带的模块,所以右上角显示(built-in)字样
【例子】自写的模块my_doc.py
'''''
Showoff features of Pydoc module
This 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 only
Keyword arguments:
spam - a processed meat product
eggs - a fine breakfast for lumberjacks
'''
self.spam = spam
self.eggs = eggs
def square(x):
'''''
Square of the param <x>
'''
return x * x
执行命令:
D:\Learn\Python> python -m pydoc my_doc
执行结果:
Help on module my_doc:
NAME
my_doc
FILE
d:\learn\python\my_doc.py
DESCRIPTION
Showoff features of Pydoc module
This is easy module to demonstrate docstrings
CLASSES
MyClass
class 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 lumberjacks
FUNCTIONS
square(x)
Square of the param <x>
DATA
__authors__ = 'Alice & Fred'
__license__ = 'Copyright...'
__version__ = 'version 1.10'
VERSION
version 1.10
执行命令:
d:\Learn\Python>python -m pydoc -w my_doc my_doc.html
wrote my_doc.html
no Python documentation found for 'my_doc.html'
执行结果:
[img]http://files.jb51.net/file_images/article/201506/201562170426640.png?20155217434[/img]