typehints - >无或留空

时间:2018-01-12 09:49:49

标签: python python-3.x typehints

使用python 3,可以选择使用typehints。

我的问题是,如果某个函数返回None,那么应该添加一个,或者将其留空。

function opentab2(){
     //clear the previous timer
     clearInterval(interval_name);

     //start a new timer
     timeout();

     document.getElementById("tab2").innerHTML='<object type="text/html" data="tab2.php" ></object>';
}

哪个PEP解决了这个问题?

1 个答案:

答案 0 :(得分:10)

明确并始终包含-> None以返回None

的函数

这是因为否则,对于不带参数的函数,类型检查器将假设您根本不使用类型提示。例如,def foo():会返回None,还是只是没有提示?

PEP 484 - Type Hints间接解决了这个问题:

  

请注意,__init__的返回类型应使用-> None进行注释。原因很微妙。如果__init__假设返回注释为-> None,那是否意味着仍应对无参数,未注释的__init__方法进行类型检查?我们只是说__init__应该有一个返回注释,而不是让这个含糊不清或引入异常的例外;因此,默认行为与其他方法相同。