python函数中return后的语句一定不会执行吗?
前言
return语句用于退出函数,向调用方返回一个表达式。return在不带参数的情况下(或者没有写return语句),默认返回None。None是一个特殊的值,它的数据类型是NoneType。NoneType是Python的特殊类型,它只有一个取值None。
它不支持任何运算也没有任何内建方法,和任何其他的数据类型比较是否相等时永远返回false,也可以将None赋值给任何变量。。。
1》当函数没有显式return,默认返回None值
>>>deffun(): print'ok' >>>res=fun() ok >>>type(res)>>>res==None True >>>deffunc(): print98 return >>>f=func() 98 >>>f >>>type(f) >>>f==None True
2》和任何其他的数据类型比较是否相等时永远返回false
>>>'python'==None False >>>''==None False >>>9==None False >>>0.0==None False
3》执行到return语句时,会退出函数,return之后的语句不再执行。但将return语句放在try语句块中,是个例外。
deffun(): print98 return'ok'#执行到该return语句时,函数终止,后边的语句不再执行 print98 deffunc(): try: print98 return'ok'#函数得到了一个返回值 finally:#finally语句块中的语句依然会执行 print98 printfun() print'----------' printfunc()
运行结果:
98 ok ---------- 98 98 ok
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对毛票票的支持。