使用 python 3,可以选择使用类型提示。
我的问题是,如果一个函数返回 None,应该添加这个,还是留空。
IE
def hint(p:str) -> None:
pass
def no_hint(p:str):
pass
哪个 PEP 解决了这个问题?
使用 python 3,可以选择使用类型提示。
我的问题是,如果一个函数返回 None,应该添加这个,还是留空。
IE
def hint(p:str) -> None:
pass
def no_hint(p:str):
pass
哪个 PEP 解决了这个问题?
明确并始终包含-> None
返回的函数None
那是因为否则,对于不带参数的函数,类型检查器将假定您根本没有使用类型提示。例如,是def foo():
要返回None
,还是根本没有类型提示?
PEP 484 -类型提示间接解决了这个问题:
请注意,返回类型
__init__
应该用-> None
. 原因很微妙。如果__init__
假设返回注释为-> None
,那是否意味着__init__
仍应对无参数、未注释的方法进行类型检查?与其留下这个模棱两可或引入异常的异常,我们只是说__init__
应该有一个返回注解;因此,默认行为与其他方法相同。