Python返回类型注释

Python返回类型注释,python,python-3.x,function,annotations,Python,Python 3.x,Function,Annotations,在声明函数时,我们应该使用返回注释吗 def generate_nine() -> int: return 9 或者我们可以简单地说: def generate_nine(): return 9 更详细地说,Python2.x有DocString,它允许您将元数据字符串附加到各种类型的对象。这非常方便,因此Python3通过允许您将元数据附加到描述其参数和返回值的函数来扩展此功能 没有先入为主的用例,但是政治公众人物建议了几个。一个非常方便的方法是允许您使用参数的预期类

在声明函数时,我们应该使用返回注释吗

def generate_nine() -> int:
    return 9
或者我们可以简单地说:

def generate_nine():
    return 9

更详细地说,Python2.x有DocString,它允许您将元数据字符串附加到各种类型的对象。这非常方便,因此Python3通过允许您将元数据附加到描述其参数和返回值的函数来扩展此功能

没有先入为主的用例,但是政治公众人物建议了几个。一个非常方便的方法是允许您使用参数的预期类型对参数进行注释;然后,编写一个装饰器来验证注释或强制参数为正确的类型就很容易了。另一种方法是允许特定于参数的文档,而不是将其编码到docstring中


Python 3自动管理返回类型。所以我认为,编写返回类型是显而易见的
例如,我在下面编写了一个返回整数的函数:

def generate_nine_int():
返回9
打印(键入(generate_nine_int()))
此函数返回一个整数。打印功能用于打印

类似地,对于浮点数,我编写了另一个函数:

def generate_nine_float():
返回9.2
打印(键入(生成浮点数())
当我打印此函数时,它将打印


与字符串、字典、列表等类似,返回类型由Python 3自动管理。因此,我认为在创建函数时不需要编写返回类型。因此,您可以使用第二个函数。

这在很大程度上是一个意见问题。如果你喜欢这种风格,喜欢IDE在你使用它们时给你的额外帮助,那就去做吧。如果你的组织需要它们,那么是的。我认为注释是python的跳伞时刻。一个像样的文档字符串怎么了?并不是说我固执己见。