python函数中return后的语句一定不会执行吗?

yipeiwu_com7年前Python基础

前言

return语句用于退出函数,向调用方返回一个表达式。return在不带参数的情况下(或者没有写return语句),默认返回None。None是一个特殊的值,它的数据类型是NoneType。NoneType是Python的特殊类型,它只有一个取值None。

它不支持任何运算也没有任何内建方法,和任何其他的数据类型比较是否相等时永远返回false,也可以将None赋值给任何变量。。。

1》当函数没有显式return,默认返回None值

>>> def fun(): 
 print 'ok' 
 
>>> res=fun() 
ok 
>>> type(res) 
<type 'NoneType'> 
>>> res==None 
True 
>>> def func(): 
 print 98 
 return 
 
>>> f=func() 
98 
>>> f 
>>> type(f) 
<type 'NoneType'> 
>>> f==None 
True 

2》和任何其他的数据类型比较是否相等时永远返回false

>>> 'python'==None 
False 
>>> ''==None 
False 
>>> 9==None 
False 
>>> 0.0==None 
False 

3》执行到return语句时,会退出函数,return之后的语句不再执行。但将return语句放在try语句块中,是个例外。

def fun(): 
 print 98 
 return 'ok'#执行到该return语句时,函数终止,后边的语句不再执行 
 print 98 
 
def func(): 
 try: 
  print 98 
  return 'ok' #函数得到了一个返回值 
 finally:#finally语句块中的语句依然会执行 
  print 98 
 
print fun() 
print '----------' 
print func() 

运行结果:

98
ok
----------
98
98
ok

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对【听图阁-专注于Python设计】的支持。

相关文章

PyQt5每天必学之布局管理

PyQt5每天必学之布局管理

在GUI编程中有一个不容忽视的部分,那就是布局管理。布局管理掌控着我们的控件在应用程序窗口如何摆放。布局管理可以通过两种方式来完成。我们可以使用绝对定位或布局类两种方法控制程序窗口中的控...

python实现高斯判别分析算法的例子

python实现高斯判别分析算法的例子

高斯判别分析算法(Gaussian discriminat analysis) 高斯判别算法是一个典型的生成学习算法(关于生成学习算法可以参考我的另外一篇博客)。在这个算法中,我们假设p...

python中的实例方法、静态方法、类方法、类变量和实例变量浅析

注:使用的是Python2.7。 一、实例方法 实例方法就是类的实例能够使用的方法。如下:复制代码 代码如下:class Foo:    def __ini...

python读取json文件并将数据插入到mongodb的方法

本文实例讲述了python读取json文件并将数据插入到mongodb的方法。分享给大家供大家参考。具体实现方法如下: #coding=utf-8 import sunburnt i...

符合语言习惯的 Python 优雅编程技巧【推荐】

Python最大的优点之一就是语法简洁,好的代码就像伪代码一样,干净、整洁、一目了然。要写出 Pythonic(优雅的、地道的、整洁的)代码,需要多看多学大牛们写的代码,github 上...