当前位置: 首页 > 面试题库 >

在python模块docstring中放什么?

齐招
2023-03-14
问题内容

好的,我已经阅读了PEP 8和PEP
257
,并且为函数和类编写了许多文档字符串,但是我不确定模块文档字符串中应该包含什么内容。我认为,至少它应该记录该模块导出的功能和类,但是我也看到了一些列出作者姓名,版权信息等的模块。有没有人举过一个很好的python
docstring应该怎么做的例子。有条理?


问题答案:

想一想help(yourmodule)在交互式口译员的提示下做的某人-他们
知道什么?(其他提取和显示信息的方法在信息量方面大致相同help)。因此,如果您有x.py

"""This module does blah blah."""

class Blah(object):
  """This class does blah blah."""

然后:

>>> import x; help(x)

显示:

Help on module x:

NAME
    x - This module does blah blah.

FILE
    /tmp/x.py

CLASSES
    __builtin__.object
        Blah

    class Blah(__builtin__.object)
     |  This class does blah blah.
     |  
     |  Data and other attributes defined here:
     |  
     |  __dict__ = <dictproxy object>
     |      dictionary for instance variables (if defined)
     |  
     |  __weakref__ = <attribute '__weakref__' of 'Blah' objects>
     |      list of weak references to the object (if defined)

如您所见,这些组件的文档字符串中已经包含了有关类的详细信息(以及函数,尽管这里没有显示)。该模块自己的文档字符串应该非常简要地描述它们(如果有的话),而应该专注于该模块作为一个整体可以为您做什么的简要概述,理想情况下是带有一些经过文档测试的示例(就像函数和类在理想情况下应该在文档中经过文档测试的示例一样)他们的文档字符串)。

我看不到诸如作者姓名和版权/许可证之类的元数据如何帮助该模块的用户-宁可添加注释,因为它可以帮助某人考虑是否重用或修改该模块。



 类似资料:
  • 问题内容: 我试图在Sphinx中使用autodoc打印出特定模块中每个函数的文档字符串,但不包括模块的文档字符串。可能吗? 原因是我使用模块docstring指定命令行选项(带有可爱的docopt)。 问题答案: 将以下内容添加到 conf.py中 : 此代码通过为autodoc-process-docstring事件提供处理程序来删除模块中的模块docstring。

  • 对于alpha-vantage python模块,有人知道参数是做什么的吗? 这是我在文档方面发现的。不多。 时间序列定义:时间序列(键=无,output_format='json',treat_info_as_error=True,indexing_type='date', 此类实现对times series的所有api调用

  • 问题内容: 我正在使用Jenkins测试我开发的Python模块。但是,出现以下错误: 如何在Jenkins中设置PYTHONPATH(以便我的模块可导入)? 我什至不确定应该添加哪个目录。似乎Jenkins将东西放在jenkins / jobs / nodepy / workspace /中,因此该目录甚至没有正确的名称供python查找。 编辑: python模块是我配置了jenkins作业以

  • 本文向大家介绍python中的日历模块是什么?,包括了python中的日历模块是什么?的使用技巧和注意事项,需要的朋友参考一下 Python有一个内置模块,并导入了该模块中的所有类和函数。 示例 输出结果

  • 问题内容: 我正在使用Jenkins测试我开发的Python模块。但是,出现以下错误: 如何在Jenkins中设置PYTHONPATH(以便我的模块可导入)? 我什至不确定应该添加哪个目录。似乎Jenkins将东西放在jenkins / jobs / nodepy / workspace /中,因此该目录甚至没有正确的名称供python找到它。 编辑: python模块是我已配置我的jenkins

  • 问题内容: 我正在尝试使用该软件包在R中导入python模块。该模块可以在这里找到。我克隆了存储库并运行成功。如果打开python shell,则可以导入。但是,当我尝试将其导入RStudio时,出现以下错误: 我在macOS Sierra版本10.12.6上并通过Anaconda安装了python 3.6。我也尝试过给出python的路径为: 当我从终端运行python时,我得到: 不确定pyt