【发布时间】:2014-01-23 18:16:13
【问题描述】:
根据guide to numpy/scipy documentation 中的约定,函数参数应按以下方式记录:
def foo(x):
"""" This function does nothing
Parameters
----------
x : type
Description of parameter `x`.
""""
pass
如果 type 是一个独特的类型,例如 int 或 str,这很简单。
现在我希望参数是 BaseClass 的实例或任何公开相同接口的对象(例如从 BaseClass 派生的类)。是否有一个约定如何简明扼要地记录参数 x 应该公开某个接口(通过派生或鸭子类型)?
【问题讨论】:
-
也许是“类基类对象”,类似于“类文件对象”? NumPy 对数组或可转换为数组的对象大量使用“类数组”,但这略有不同;列表列表不暴露数组的接口。
-
这就是我目前的做法。但是,我对这种方法并不完全满意,因为类类感觉相当模糊。
标签: python python-sphinx duck-typing numpydoc