怎么在python中利用函数返回多个结果-创新互联

怎么在python中利用函数返回多个结果?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

成都创新互联专业提供重庆服务器托管服务,为用户提供五星数据中心、电信、双线接入解决方案,用户可自行在线购买重庆服务器托管服务,并享受7*24小时金牌售后服务。

函数返回多个结果


$ 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中利用函数返回多个结果-创新互联
网页路径:http://scyanting.com/article/dpejgh.html