ITPub博客

首页 > IT职业 > IT生活 > Python的函数能返回多个值吗

Python的函数能返回多个值吗

IT生活 作者:nintyuui 时间:2021-09-11 10:29:31 0 删除 编辑

函数体内部的语句在执行时,一旦执行到return,函数就执行完毕,并将结果返回。如果没有return语句,函数执行完毕后也会返回结果,只是结果为None。return None可以简写为return。

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学习网。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/3209/viewspace-2835910/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: python如何拆分list
请登录后发表评论 登录
全部评论
  • 博文量
    87
  • 访问量
    15048