python(17): “文档字符串”及帮助信息的获取(第11章)

学习一门语言,想要把它的所有模块的所有方法记住是不可能,只要能记住常用的一些内容就可以了。但是,对于一些不常用到的内容,或者突然忘记了的内容,只要知道该到什么地方去查,怎么查就可以了。
在python中,有多种方式可以用来查询相关的帮助信息,各种方式可以提供详略不同的内容。
首先,可以看程序文件中的注释。这是一个程序最基本的帮助信息。对于一个程序并不是每个人都可以看到原文件,此外这个注释信息一般比较散乱,因此,这并不是一种好方法。不过不用担心,python提供了足够多的选择。
第二,在交互模式中可以使用内置dir()函数列出一个对象有哪些属性和方法。dir()只列出相关的属性和方法的名字,并不提供具体的解释。
第三,查看对象的__doc__属性。在一个模块被import时,其文件中的某些特殊的字符串会被python解释器保存在相应对象的__doc__属性中。比如,一个模块有模块的__doc__,一个class或function也有其对应的__doc__属性。在python中,一个模块其实就是一个.py文件。在文件中特殊的地方书写的字符串就是所谓的docstrings,就是将被放到__doc__的内容。这个“特殊的地方”包括:
  • 一个文件任何一条可执行的代码之前  #模块的__doc__
    • 一个类,在类定义语句后,任何可执行代码前 #类的__doc__
    • 一个函数,在函数定义语句后,任何可执行代码前 #函数的__doc__docstrings对于放在什么地方是有要求的,但是什么内容则没有硬必珠规定。因此,完成可以在这些地方放上HTMl代码,方便用别的式具产生html的帮助文件。
      第四,pydoc工具。这个工具可以提供类似于unix中man页的帮助信息。使用这个工具有两种方式。在交互模式中,可以使用内置函数help(object)来调用pydoc的功能。此外,pydoc也可以单独使用。
      • pydoc   #用于显示与name相关的内容
      • pydoc -k  #在概要行及模块中搜索keyword
      • pydoc -p  
        #让pydoc作为一个httpd运行,提供网页访问服务,地址为http://localhost:
      • pydoc -g #使用图形界面提供帮助信息
      • pydoc -w  
        #生成html格式的帮助文件,name可以是一个python模块名,方法名,如果包含‘/’表示这是个文件名。name还可以是一个目录名,这样会产生这个目录下所有.py文件的相关帮助信息