有没有办法评论函数的参数,使它们被pydoc库识别?
即pydoc的文档字符串是什么?
pydoc不识别文档字符串中的"结构化"元素,它只是按原样输出文档字符串.有关示例,请参阅PEP-257.
如果您需要"格式化"文档,则应使用其他文档生成器,例如Sphinx或pdoc.
函数的参数必须记录在函数docstring中.以下是从这个答案中得到的一个例子:
""" This example module shows various types of documentation available for use with pydoc. To generate HTML documentation for this module issue the command: pydoc -w foo """ class Foo(object): """ Foo encapsulates a name and an age. """ def __init__(self, name, age): """ Construct a new 'Foo' object. :param name: The name of foo :param age: The ageof foo :return: returns nothing """ self.name = name self.age def bar(baz): """ Prints baz to the display. """ print baz if __name__ == '__main__': f = Foo('John Doe', 42) bar("hello world")
如果您想利用具有更多参数描述符的重构文本(例如:type param:
或从此处:rtype:
获取),这是另一个更明确的示例
""" The ``obvious`` module ====================== Use it to import very obvious functions. :Example: >>> from obvious import add >>> add(1, 1) 2 This is a subtitle ------------------- You can say so many things here ! You can say so many things here ! You can say so many things here ! You can say so many things here ! You can say so many things here ! You can say so many things here ! You can say so many things here ! You can say so many things here ! This is another subtitle ------------------------ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. """ def add(a, b): """ Adds two numbers and returns the result. This add two real numbers and return a real result. You will want to use this function in any place you would usually use the ``+`` operator but requires a functional equivalent. :param a: The first number to add :param b: The second number to add :type a: int :type b: int :return: The result of the addition :rtype: int :Example: >>> add(1, 1) 2 >>> add(2.1, 3.4) # all int compatible types work 5.5 .. seealso:: sub(), div(), mul() .. warnings:: This is a completly useless function. Use it only in a tutorial unless you want to look like a fool. .. note:: You may want to use a lambda function instead of this. .. todo:: Delete this function. Then masturbate with olive oil. """ return a + b
您也可以使用不同的文档字符串格式(如Google或Numpy),我推荐!!! 让你的文档更清晰.
希望这可以帮助!