当前位置:  开发笔记 > 编程语言 > 正文

如何写出有意义的文档字符串?

如何解决《如何写出有意义的文档字符串?》经验,为你挑选了4个好方法。

什么,在您看来是一个有意义的文档?你期望在那里描述什么?

例如,考虑这个Python类__init__:

def __init__(self, name, value, displayName=None, matchingRule="strict"):
    """
    name - field name
    value - field value
    displayName - nice display name, if empty will be set to field name
    matchingRule - I have no idea what this does, set to strict by default
    """

你觉得这有意义吗?发布您的好/坏示例供所有人知道(以及一般答案,以便可以接受).



1> MrTopf..:

我同意"你从方法的签名中无法分辨的任何东西".它也可能意味着解释方法/函数返回的内容.

您可能还希望在文档字符串中使用Sphinx(和reStructuredText语法)进行文档编制.这样您就可以轻松地将其包含在文档中.有关示例,请查看例如repoze.bfg,它广泛使用(示例文件,文档示例).

人们可以在文档字符串中添加的另一件事也是doctests.这可能是有道理的.对于模块或类文档字符串,您还可以显示如何使用它并同时具有此可测试性.



2> Xolve..:

从PEP 8:

编写好的文档字符串(又名"docstrings")的约定在PEP 257中是永生的.

为所有公共模块,函数,类和方法编写文档字符串.对于非公共方法,文档字符串不是必需的,但是您应该有一个注释来描述该方法的作用.此评论应出现在"def"行之后.

PEP 257描述了良好的文档字符串约定.请注意,最重要的是,结束多行文档字符串的"""应该在一行上,并且最好以空行开头.

对于一个班轮文档字符串,可以将结束""保持在同一行.


Xolve真的应该发布一个到PEP 257的链接:http://www.python.org/dev/peps/pep-0257/

3> eglasius..:

该怎么做:

你从方法的签名中无法分辨的任何东西.在这种情况下,唯一有用的是:displayName - 如果为空将设置为字段名称.



4> Martin..:

查看numpy的docstrings以获得很好的例子(例如http://github.com/numpy/numpy/blob/master/numpy/core/numeric.py).

文档字符串分为几个部分,如下所示:

Compute the sum of the elements of a list.

Parameters
----------
foo: sequence of ints
   The list of integers to sum up.

Returns
-------
res: int
   sum of elements of foo

See also
--------
cumsum:  compute cumulative sum of elemenents

推荐阅读
手机用户2402851335
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有