资讯专栏INFORMATION COLUMN

python学习笔记-为自定义类或者函数编写help文档,以及进行文档测试

Kerr1Gan / 1920人阅读

摘要:在中我们可以利用模块名或者类名的方式来查看类或者函数的文档。例如,我们添加了文档测试内容后如下所示由于我们写了所以以上文档测试只有在以入口文件执行的时候才会进行文档测试。因此并不会在实际应用在执行文档测试。

在python中我们可以利用help("模块名")或者help(类名)的方式来查看类或者函数的文档。但是它们是如何编写的呢?
其实它们在类最前面或者方法的最前面用"""三个双引号包裹了多行注释。这些内容就会被Python当成帮助文档。

那帮助文档一般会写什么内容呢?主要包括以下内容:

该类或者函数的主要作用

传入的值和输出的值

一些特殊情况的说明

文档测试内容

以上内容是个人的总结,但是并没有看到相关的资料。

我们来举一个例子:

class Apple(object):
    """ This is an Apple Class"""

    def get_color(self):
        """
        Get the Color of Apple.
        get_color(self) -> str
        """
        return "red"

在python terminal输入

>>> from CallDemo import Apple
>>> help(Apple)
Help on class Apple in module CallDemo:

class Apple(__builtin__.object)
 |  This is an Apple Class
 |  
 |  Methods defined here:
 |  
 |  get_color(self)
 |      Get the Color of Apple.
 |      get_color(self) -> str
 |  
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |  
 |  __dict__
 |      dictionary for instance variables (if defined)
 |  
 |  __weakref__
 |      list of weak references to the object (if defined)
利用doctest进行文档测试

我们在注释中我们也可以doctest模块进行文档测试。

例如,我们添加了文档测试内容后如下所示:

class Apple(object):
    """
    This is an Apple Class

    Example:
        >>> apple = Apple()
        >>> apple.get_color()
        "red"
        >>> apple.set_count(20)
        >>> apple.get_count()
        400

    """

    def get_color(self):
        """
        Get the Color of Apple.
        get_color(self) -> str
        """
        return "red"

    def set_count(self, count):
        self._count = count

    def get_count(self):
        return self._count * self._count


if __name__ == "__main__":
    import doctest

    doctest.testmod()

由于我们写了

if __name__ == "__main__":
    import doctest

    doctest.testmod()

所以以上文档测试只有在以入口文件执行的时候才会进行文档测试。因此并不会在实际应用在执行文档测试。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/38322.html

相关文章

  • [零基础学python]Python文档

    摘要:软件文档或者源代码文档是指与软件系统及其软件工程过程有关联的文本实体。而则认为软件文档是被软件工程师之间用作沟通交流的一种方式,沟通的信息主要是有关所开发的软件系统。则强调文档的权威性,他认为文档应该提供对软件系统的精确描述。 文档,这个词语在经常在程序员的嘴里冒出来,有时候他们还经常以文档有没有或者全不全为标准来衡量一个软件项目是否高大上。那么,软件中的文档是什么呢?有什么要求呢?p...

    why_rookie 评论0 收藏0
  • [译] Python 学习 —— __init__() 方法 4

    摘要:同时,有多个类级别的静态构造函数的方法。这个累赘,无论如何,是被传递到每个单独的对象构造函数表达式中。我们可能只有几个特定的担忧,提供额外关键字参数给构造函数。 注:原书作者 Steven F. Lott,原书名为 Mastering Object-oriented Python 没有__init__()的无状态对象 下面这个示例,是一个简化去掉了__init__()的类。这是一个常见...

    yvonne 评论0 收藏0
  • Django 学习小组:博客开发实战第一周教程 —— 编写博客的 Model 与主页面

    摘要:学习小组是由我发起的一个促进新手互相学习互相帮助的组织。当然如果你不喜欢英文,可以看我们的中文翻译版本入门教程中文翻译版。如果模板文件中有如下代码那么渲染时就会循环渲染篇文章,并且也会被存储在数据库中文章的标题取代。 本教程内容已过时,更新版教程请访问: django 博客开发入门教程。 本节是 Django Blog 项目的开篇,是 Django 学习小组的集体学习成果。Django...

    陈江龙 评论0 收藏0
  • [零基础学python]的细节

    摘要:在对象接口后包装其实现的细节,从而隔离了代码的修改对用户产生的影响。类提供了一个新的本地作用域,最小化了变量名冲突。类其实并没有结束,不过本讲座到此对类暂告一段。 前面对类的有关内容已经描述不少了,其实话题远远没有结束,不过对于初学者,掌握这些已经算是入门,在以后的实践中,还需要进行体会和感悟。 这几天和几个朋友以各种途径讨论过OOP的相关问题,他们是:令狐虫、Frank、晋剑、小冯...

    Fundebug 评论0 收藏0
  • 使用 Python 编写一个 Memcached 的 CLI

    摘要:原文地址近期在项目中使用到了相比较为齐全的工具这个非关系型数据库客户端只能通过与服务器端进行交互于是有了为这个数据编写个简便的客户端工具的想法。如果用户没有传入对应的参数则使用默认的参数进行绑定。 原文地址: http://52sox.com/use-python-write-a-memcached-cli/ 近期在项目中使用到了Memcached,相比redis较为齐全的工具,这个非...

    RdouTyping 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<