一、说明

return 语句是Python函数返回的结果,可以是数值、字符串、列表、表达式、函数等;

return 语句将Python函数的结果,返回到调用的地方,并把程序的控制权一起返回,即在函数中,执行到return语句时,会退出程序(try...finally语句除外);

Python 函数中,没有return语句时,默认 return一个 None 对象;多个return语句时,运行到第一个return语句即返回,不再执行其它代码。

二、示例

函数中没有显式return语句

>>> def fun(a, b):

... if a == b:

... print(a, b)

...

>>> f = fun(3, 3)

3 3

>>> f

>>> type(f)

函数中一个return返回多个值

>>> def fun(a, b):

... if a == b:

... return a, b, a + b

...

>>> fun(2, 2)

(2, 2, 4)

函数中多个return

>>> def fun(a, b):

... if a > b:

... return a

... else:

... return b

...

>>> fun(3, 2)

3

>>> fun(3, 4)

4

函数的try...finally语句中,return后的代码会继续执行,但return语句仍然是函数的返回结果

>>> def fun():

... try:

... print("before return")

... return "-------------------"

... finally:

... print("after return")

...

>>> fun()

before return

after return

'-------------------'

>>> a = fun()

before return

after return

>>> a

'-------------------'

python return函数_理解Python函数中的return关键字相关推荐

  1. python生成器用法_理解python中生成器用法

    生成器(generator)概念 生成器不会把结果保存在一个系列中,而是保存生成器的状态,在每次进行迭代时返回一个值,直到遇到StopIteration异常结束. 生成器语法 生成器表达式: 通列表解 ...

  2. java static 函数_详解java中的static关键字

    Java中的static关键字可以用于修饰变量.方法.代码块和类,还可以与import关键字联合使用,使用的方式不同赋予了static关键字不同的作用,且在开发中使用广泛,这里做一下深入了解. 静态资 ...

  3. python无返回值函数_理解Python 中无返回值函数的问题

    例如 list 的 append 操作就是无返回值的,换句话说就是不能进行形如 list = [] list.append(1).append(2) 这样的连续操作 注意函数返回的数据类型注意是 li ...

  4. python的认识_理解 Python 中的 *args 和 **kwargs

    Python是支持可变参数的,最简单的方法莫过于使用默认参数,例如: def test_defargs(one, two = 2): print 'Required argument: ', one ...

  5. python全球购代码_理解python的unicode字符串

    基于python2.7中的字符串: unicode-->编码encode('utf-8')-->写入文件 读出文件-->解码decode('utf-8')-->unicode ...

  6. python预定义_【Python】python类中方法的预定义

    知乎问题: 像这个图片里面显示的,self.prediction首先声明了下然后下面给出了定义,然后optimize又调用这个函数但是没有用self.prediction()这样的方式而是像用变量一样 ...

  7. python 时间序列预测_使用Python进行动手时间序列预测

    python 时间序列预测 Time series analysis is the endeavor of extracting meaningful summary and statistical ...

  8. python 概率分布模型_使用python的概率模型进行公司估值

    python 概率分布模型 Note from Towards Data Science's editors: While we allow independent authors to publis ...

  9. 【C语言】函数的理解——关于函数的声明

    函数的理解--关于函数的声明 #include <stdio.h> //void sumx(int begin,int end);//函数的声明 void sumx(int ,int ) ...

最新文章

  1. (转)光照模型及cg实现
  2. python调用lib_基于python调用libvirt API
  3. 在Windows Mobile模拟器(Emulator)建立网络连接
  4. oracle11gR版本GI中新增,Oracle11g新特性MemberKillEscalation简介
  5. Zabbix监控nginx status
  6. java猜数游戏有次数限制_幼小衔接可以用的超有趣的数学小游戏
  7. 深度学习 --- 优化入门一(梯度下降所面临的问题)
  8. python正则匹配中文_python 正则表达式匹配中文-阿里云开发者社区
  9. elasticsearch 7.0.1 + kibana + elasticsearch-analysis-ik 7.0.0 安装和配置过程中问题备忘录...
  10. 算法设计与分析第二章习题解答与学习指导(第2版)屈婉婷 刘田 张立昂 王捍贫编著 清华大学出版社
  11. Halcon教程六:为什么要二值化
  12. c语言 复制到编辑页面 乱码,富文本编辑器的复制word到浏览器发生乱码(vue+wangEditor)...
  13. GWAS: 网页版的基因型填充(genotype imputation)
  14. vba python 基金历史排名_“科技基金”万里挑一:近三年各阶段排名前10“科技基金”全在这...
  15. mcldownload文件夹_download文件夹是什么?Win7系统download文件夹可以删除?
  16. 分布式锁1 Java常用技术方案
  17. es分片多少合理_【ES】ElasticSearch 深入分片
  18. ArcMap制作疫情地图
  19. Data Analysis
  20. 如何避免面向监狱编程以及程序员如何通过合法途径获利

热门文章

  1. 丁卓雅计算机学院,幼儿园音乐教育教学研讨会暨许卓雅教授音乐专题讲座
  2. 嵌入式linux opengl6,利用winSSHD实现Windows和Linux间的文件互传
  3. php调用易语言的dll文件,【PHP】真正意义上的PHP调用易语言DLL
  4. java 本地内存_哪个更快:Java堆还是本地内存
  5. 计算机基础与应用32页,《计算机基础与应用》2次作业及答案
  6. linux服务器调优列表,2018-10-24(linux服务器常见的各种参数调优)
  7. 跳转定义_HTML中的超级链接和锚点跳转
  8. solr mysql 自动同步_MongoDB和Solr的整合以及实现数据同步功能
  9. SpringBoot2.0使用Spring WebFlux之HelloWord篇
  10. 采用Spring管理Bean和依赖注入