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设计】的支持。

相关文章

Python去除字符串前后空格的几种方法

其实如果要去除字符串前后的空格很简单,那就是用strip(),简单方便 >>> ' A BC '.strip() 'A BC' 如果不允许用strip()的方法,...

Python 调用Java实例详解

Python 调用Java实例详解 前言: Python 对服务器端编程不如Java 所以这方面可能要调用Java代码 前提: Linux 环境  1 安装 jpype1 安...

python 五子棋如何获得鼠标点击坐标

python 五子棋如何获得鼠标点击坐标

这篇文章主要介绍了python 五子棋如何获得鼠标点击坐标,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 点坐标的取自: from...

Python+PyQT5的子线程更新UI界面的实例

子线程里是不能更新UI界面的,在移动端方面。Android的UI访问是没有加锁的,多个线程可以同时访问更新操作同一个UI控件。也就是说访问UI的时候,android系统当中的控件都不是线...

详解Matplotlib绘图之属性设置

详解Matplotlib绘图之属性设置

关于Python数据分析在数学建模中的更多相关应用:Python数据分析在数学建模中的应用汇总(持续更新中!) (1)、导入库 import matplotlib.pyplot a...