开始一个Python项目,编写了几百行代码,创建了一些类,立即得到了满足,一切运行良好。
几个月后回到这个项目,我绝望地迷失了。比意大利面更糟糕的是:代码现在看起来像是一百个类成员函数的混乱集合。大多数这些功能只有两到几十行;他们的工作和目的非常明确 - 除了我不知道函数参数的数据类型,返回值以及所涉及的类成员变量的数据类型。因此,我无法全面了解我的课程是如何相互关联的。如何处理这种情况?如何获得C ++中.h头文件提供的高级概述?如何将这些信息插入源文件,以便下次我不需要重做这项研究?
答案 0 :(得分:0)
在适当情况下使用docstrings会有很长的路要走。
PEP引用的例子:
def complex(real=0.0, imag=0.0):
"""Form a complex number.
Keyword arguments:
real -- the real part (default 0.0)
imag -- the imaginary part (default 0.0)
"""
if imag == 0.0 and real == 0.0:
return complex_zero
...
这些字符串作为__doc__
特殊属性添加到函数/方法中,您可以从python访问它。直接或与pydoc模块一起使用。作为奖励,可以使用help(something)
直接从python控制台获取此类文档。您还应该查看sphinx-doc,这是用于记录python本身的工具。它不是源代码,但它是为记录python代码量身定制的,整体上非常方便。
至于您对实际类型的关注,通常不指定特定类型。他们没关系。重要的是你能用它们做什么,因为python代码通常使用duck typing。那就是:你不关心你的论点是什么,只要你可以调用它的foo
方法并访问它的bar
属性,它们的行为与你期望的一样。