根据guide to numpy/scipy documentation中的约定,应以以下方式记录功能参数:
def foo(x):
"""" This function does nothing
Parameters
----------
x : type
Description of parameter `x`.
""""
pass
如果类型是不同的类型,例如int或str,则很简单。
现在,我希望参数是BaseClass的实例或公开同一接口的任何对象(例如从BaseClass派生的类)。是否有约定如何简洁地记录参数x应该公开某个接口(通过派生或鸭式输入)?
您描述的方法几乎是标准方法。
另一种方法是使用抽象基类定义必须实现的特定方法,然后根据an answer to a related question的建议将其指定为类型。