Python学习之函数返回多个值

问题的引出

Python中,一个函数能不能一次返回多个值?

在C语言中,函数最多返回一个值,如果要返回多个值,可以把这些值封装在一个结构体中。注意,C语言不允许函数返回整个数组。

Python中,可以返回任意类型的对象,如果想返回多个值,可以把这些值封装成一个元组或者其他的集合类型

举例

>>> def multiple(x, y):
...     x = 2
...     y = [3, 4]
...     return x, y
...
>>> X = 1
>>> L = [1, 2]
>>> X, L = multiple(X, L)
>>> X
2
>>> L
[3, 4]

注意第8行,看起来好像返回了2个值,但是实际上只有一个:一个包含2个元素的元组。它的圆括号是可选的,这里省略了。在调用返回之后,我们能够使用元组赋值去分解这个返回元组的组成部分。

这段代码的实际效果就是通过明确的赋值模拟了其他语言中的输出参数:X 和 L 在调用后发生了改变。

参考资料

《Python学习手册(第4版)》,机械工业出版社

Python学习之函数返回多个值相关推荐

  1. python学习笔记-day6-函数的延续【汉字转拼音模块,函数返回多个值,匿名函数,列表生成式,generator生成器,三元运算符】...

    继续来说函数的后续知识点,主要是函数返回多个值,匿名函数,三元运算符,算是比较小的知识点. 一.汉字转拼音模的使用 1.安装模块 #install xpinyin 2.如果使用 结果: 二.函数返回多 ...

  2. python函数返回多个值_python函数返回多个值的示例方法

    python可以返回多个值,确实挺方便 函数里的return只能返回一个值,但是返回类型是没是限制的 因此,我们可以"返回一个 tuple类型,来间接达到返回多个值". 例子是我在 ...

  3. python学习 字符串函数

    python学习 字符串函数 字符串不能被改变,以下和函数,只是 原字符串初始化后不能改变,函数只是将改变后的值返回赋给新的变量(当然可以赋给原来的变量) 大小写函数 capitalize()函数 大 ...

  4. python判断特殊字符的函数,python学习--quote()函数,,屏蔽特殊的字符、比如

    python学习--quote()函数,,屏蔽特殊的字符.比如 屏蔽特殊的字符.比如如果url里面的空格!url里面是不允许出现空格的. 在 Python2.x 中的用法是: urllib.quote ...

  5. c++中函数放在等号右边_如何从C或C++中的函数返回多个值?

    新程序员通常在寻找从函数返回多个值的方法.不幸的是,C和C++不允许直接这样做.但是幸运的是,通过一些巧妙的编程,我们可以轻松实现这一目标. 下面是从C函数中返回多个值的方法: 通过使用指针. 通过使 ...

  6. Android JNI编程(三)——C语言指针的初步认识、指针变量、互换两个数、函数返回多个值...

    版权声明:本文出自阿钟的博客,转载请注明出处:http://blog.csdn.net/a_zhon/. 目录(?)[+] 一.什么是指针? 简单来说: 指针就是内存地址      内存地址就是指针. ...

  7. Java中如何实现一个函数返回多个值

    由于java中没有指针,不能像C++一样通过指针的方式实现一个函数返回多个值,因此在java中必须采用变通的方式解决,常用的方式有以下几种: 1.封装一个实体类,将要返回的值封装进去: 2.通过map ...

  8. C语言通过指针间接的实现函数返回多个值

    C语言通过指针间接的实现函数返回多个值 本例题中通过把指针作为函数参数来传递,依次达到改变变量的值的目的,最后实现一个函数返回两个变量的值 int *X,*X应该被看成一个整体来看,表示一个整形. # ...

  9. 指针实现函数返回多个值

    通常情况下,函数如果有返回值,那么该函数的返回值类型必须和函数的类型一致,并且一个函数只能有一个返回值.下面我们通过指针来间接实现函数返回多个值 void caculator(int a,int b, ...

最新文章

  1. 一个 Vue + Node + MongoDB 博客系统
  2. 《上海市产业绿贷支持绿色新基建(数据中心)发展指导意见》印发了
  3. 数据结构(6) -- 查找
  4. 2018-2019 20165208 网络对抗 Exp3 免杀原理与实践
  5. 模拟天天酷跑游戏java_cocos2d 简单高仿天天酷跑游戏
  6. 一些JavaScript基本函数
  7. pythonpil库过滤图像contour_Python之PIL库的运用、GIF处理h
  8. 币安跨链桥在BSC、以太坊和IoTeX主网全面支持IOTX资产
  9. python罗盘时钟代码,罗盘时钟(原创)
  10. 自杀式未来,从垃圾快乐上瘾开始?
  11. Java并发编程系列文章目录帖及源码
  12. 刘小乐教授:我与生物信息学的不解之缘
  13. UGUI源码解析——ContentSizeFitter
  14. Maya XGen 毛发制作3 - 创建发块
  15. 实用主义的思考与学习 读书笔记
  16. 设计模式六大原则及常用模式详解
  17. 数据库原理课程设计 — 学业课程预警系统
  18. C语言中的随机数生成器
  19. Dell p2415q DP 如何开启 60hz 模式, Macbook pro 2017
  20. Xshell-7工具栏隐藏了

热门文章

  1. nyoj-491--幸运三角形--简单深搜枚举(TLE)
  2. Golang之slice操作
  3. 爬虫---Beautiful Soup 通过添加不同的IP请求
  4. RocketMQ源码分析之RocketMQ事务消息实现原理上篇(二阶段提交)
  5. VS网站开发的发布部署的不同情况说明
  6. 轻松自动化---selenium-webdriver(python) (十二)
  7. asp.net mvc中用 log4net记录日志到数据库中
  8. Spring 源码阅读 之 Spring框架加载
  9. 解决msgfmt无法使用的问题
  10. 用服务器控件在后台调用前台客户端JS方法