Coding style 编码风格:如何明显确定参数';我们必须传递给函数的类型是什么?
记录函数预期接收的参数类型的最佳方式是什么 有时,函数只使用对象的一个或两个字段。有时,这些字段具有通用名称(get()、set()、reset()等)。在这种情况下,我们必须留下评论:Coding style 编码风格:如何明显确定参数';我们必须传递给函数的类型是什么?,coding-style,python,Coding Style,Python,记录函数预期接收的参数类型的最佳方式是什么 有时,函数只使用对象的一个或两个字段。有时,这些字段具有通用名称(get()、set()、reset()等)。在这种情况下,我们必须留下评论: ... @staticmethod def get( postId, obj ): """obj is instance of class Type1, not Type2""" inner = obj.get() 有没有更明确的方法让它变得明显
...
@staticmethod
def get( postId, obj ):
"""obj is instance of class Type1, not Type2"""
inner = obj.get()
有没有更明确的方法让它变得明显?也许一个对象名应该包含预期的类型名?鉴于python的“duck typing”(后期绑定)行为,要求特定类型是错误的 如果您知道您的函数不能采用哪种类型,则可以在检测到这些类型后引发异常;否则,如果传递的对象不支持适当的协议,只需引发异常 至于文档,只需将所需的协议放在docstring中即可。python的一个优点是“duck typing”,即不依赖于变量的实际类型,而是依赖于其行为。所以我建议,你记录这个字段,这个对象应该包含
"""obj should have a field 'foo' like in class 'bar' or 'baz' """
首先,正确命名您的方法,并在有意义的情况下使用属性 你应该试着掌握鸭子打字的窍门。它非常有用。如果没有,试着看看是否有助于你做你想做的事