【Python学习】python学习手册--第十五章 文档

Python代码的文档的技术和工具。尽管Python代码具有很高的可读性,在合适的地方当时帮助文档或者注释,能很大程度的帮助别人了解你的程序工作内容。

注释

与其他代码一样,Python的注释以#号开头,主要用来表示某句话,某个语句主要是用来做什么。

dir函数

内置的dir函数可以查看某个对象内所有可用属性的列表。

>>> dir(list) #查看list对象中可用的属性和方法
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
>>> 

文档字符串__doc__

这类文档一般写在模块文件、对象或者函数的最前端,使用三引号构成的字符串,Python会自动封装这些字符串,形成所谓的文档字符串,这些字符串是介绍改代码的主要功能的帮助文档:

>>> def document():      
...   #这里加上注释也是没有关系的,要保证文档字符串在所有可执行代码的最前端。    
...   '''hello               
...        my name is baymax.
...        enjoy Python'''   
...   print("hello world")   
... 
>>> document()
hello world
>>> document.__doc__
'hello \n       my name is baymax.\n       enjoy Python'
>>> help(document)
Help on function document in module __main__:          #这一行的信息显示是函数文档,在__main__模块中。

document()
    hello 
    my name is baymax.
    enjoy Python

>>> 

Python中并没有对文档字符串的明确标准。但是强烈建议在自己写的模块和代码中加入适当的说明。Python的内置模块和对象都使用类似的技术。

PyDoc:help函数

标注的PyDoc工具是Python程序代码,它知道如何提取文档字符串并自动提取其结构化的信息。并将其格式化成各种类型的排列友好的报表。最主要的PyDoc接口是内置的help函数和PyDoc GUI/HTML接口。help函数会启用PyDoc从而产生简单的文字报表。

Python:HTML报表

PyDoc也提高GUI接口,可以将报表通过HTML网页格式来呈现。可以通过任何网页浏览器来查看,PyDoc会收集代码中各个文件中文档字符串,并在网页上显示出来。

网络资源

也可以从Python官网上下载,Python的标准手册集。在各个Python论坛中学习Python,在官网上发布信息了解最新版的Python。对于一些出版的书籍可能会滞后于Python新版本的发布。

常见编写代码陷阱

  • 别忘了冒号,在复合语句的首行,一般都是以冒号结尾
  • 从顶格开始写,确保Python的顶层嵌套是没有任何代码缩进的
  • 空白行在交互模式提示符下很重要
  • 缩进要一致,同一层的代码块要保持一致的缩进量。
  • 不要在Python中写C代码,比如条件判断不用打括号
  • 使用简单的for循环,而不是使用while或者range:对于相同的循环逻辑,简单的for循环总是容易写,运行起来也更快。
  • 要注意赋值语句中的可变对象。要分清Python中的可变对象和不可变对象。
  • 不要期待在原处修改对象的函数会返回结果。如list.append(object)
  • 在调用函数时,一定要用括号。必须在使用函数时加上括号,无论它是否需要传递参数。
  • 不要在使用和导入模块时,带上多余的扩展名。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章