python中函数返回多个结果的实例方法


Posted in Python onDecember 16, 2020

其实有一个疑惑一直在小编心中,每一个代码段编写里,总会出现好多个函数,也许有人和小编有一样的认同感,后来,小编明白,每一个函数本身都是都有各自的目的,有的是需要去必须返回一个字符串,有的是必须要去返回浮点数,还有的是需要去返回多个值,这也是大家所需要的,下面给大家演示。

函数返回多个结果

$ vim e3.py
def damage(skill1,skill2):
  damage1 = skill1 * 3
  damage2 = skill2 * 2 + 10
  return damage1,damage2
skill1_damage,skill2_damage = damage(3,6) 
print(skill1_damage,skill2_damage)

执行结果

$ python2.7 e3.py

(9, 22)

Python中的函数是可以返回多个值

比如在游戏中经常需要从一个点移动到另一个点,给出坐标、位移和角度,就可以计算出新的新的坐标:

import math
def move(x, y, step, angle=0):
  nx = x + step * math.cos(angle)
  ny = y - step * math.sin(angle)
  return nx, ny

然后,我们就可以同时获得返回值:

>>> x, y = move(100, 100, 60, math.pi / 6)
>>> print(x, y)
151.96152422706632 70.0

但其实这只是一种假象,Python函数返回的仍然是单一值:

>>> r = move(100, 100, 60, math.pi / 6)
>>> print(r)
(151.96152422706632, 70.0)

原来返回值是一个tuple!但是,在语法上,返回一个tuple可以省略括号,而多个变量可以同时接收一个tuple,按位置赋给对应的值,所以,Python的函数返回多值其实就是返回一个tuple,但写起来更方便。

Python 相关文章推荐
Python中的Classes和Metaclasses详解
Apr 02 Python
python Django批量导入数据
Mar 25 Python
Python 判断是否为质数或素数的实例
Oct 30 Python
Python随机生成均匀分布在三角形内或者任意多边形内的点
Dec 14 Python
在Pandas中给多层索引降级的方法
Nov 16 Python
django框架防止XSS注入的方法分析
Jun 21 Python
Python解析json时提示“string indices must be integers”问题解决方法
Jul 31 Python
python PyQt5/Pyside2 按钮右击菜单实例代码
Aug 17 Python
利用python实现PSO算法优化二元函数
Nov 13 Python
python给图像加上mask,并提取mask区域实例
Jan 19 Python
Python Dataframe常见索引方式详解
May 27 Python
解决pip安装tensorflow中出现的no module named tensorflow.python 问题方法
Feb 20 Python
python的setattr函数实例用法
Dec 16 #Python
10个python爬虫入门基础代码实例 + 1个简单的python爬虫完整实例
Dec 16 #Python
pip 20.3 新版本发布!即将抛弃 Python 2.x(推荐)
Dec 16 #Python
python unichr函数知识点总结
Dec 16 #Python
python 模拟登录B站的示例代码
Dec 15 #Python
python 模拟登陆163邮箱
Dec 15 #Python
详解numpy1.19.4与python3.9版本冲突解决
Dec 15 #Python
You might like
Apache2 httpd.conf 中文版
2006/12/06 PHP
php下安装配置fckeditor编辑器的方法
2011/03/02 PHP
跟我学Laravel之视图 & Response
2014/10/15 PHP
PHP程序中的文件锁、互斥锁、读写锁使用技巧解析
2016/03/21 PHP
浅谈php fopen下载远程文件的函数
2016/11/18 PHP
PHP实现的简单路由和类自动加载功能
2018/03/13 PHP
PHP如何使用array_unshift()在数组开头插入元素
2020/09/01 PHP
js循环改变div颜色具体方法
2013/06/25 Javascript
JQuery的ready函数与JS的onload的区别详解
2013/11/21 Javascript
showModalDialog模态对话框的使用详解以及浏览器兼容
2014/01/11 Javascript
一些老手都不一定知道的JavaScript技巧
2014/05/06 Javascript
浅谈JavaScript事件的属性列表
2015/03/01 Javascript
JS+CSS简单树形菜单实现方法
2015/09/12 Javascript
Spring mvc 接收json对象
2015/12/10 Javascript
js仿微博实现统计字符和本地存储功能
2015/12/22 Javascript
Winform客户端向web地址传参接收参数的方法
2016/05/17 Javascript
纯js实现悬浮按钮组件
2016/12/17 Javascript
详解vue移动端项目代码拆分记录
2019/03/15 Javascript
Vue.extend实现挂载到实例上的方法
2019/05/01 Javascript
javascript实现图片轮播代码
2019/07/09 Javascript
如何阻止移动端浏览器点击图片浏览
2020/08/29 Javascript
python对json的相关操作实例详解
2017/01/04 Python
django 删除数据库表后重新同步的方法
2018/05/27 Python
Python3 venv搭建轻量级虚拟环境的步骤(图文)
2019/08/09 Python
Python实现微信翻译机器人的方法
2019/08/13 Python
如何理解python面向对象编程
2020/06/01 Python
英国IT硬件供应商,定制游戏PC:Mesh Computers
2019/03/28 全球购物
Java中的类包括什么内容?设计时要注意哪些方面
2012/05/23 面试题
高三家长寄语
2014/04/03 职场文书
教师思想工作总结2015
2015/05/13 职场文书
个人催款函范文
2015/06/23 职场文书
2015年治庸问责工作总结
2015/07/27 职场文书
初一年级组工作总结
2015/08/12 职场文书
小学英语教学随笔
2015/08/14 职场文书
厉害!这是Redis可视化工具最全的横向评测
2021/07/15 Redis
科普 | 业余无线电知识-波段篇
2022/02/18 无线电