温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

python怎么返回多个参数

发布时间:2022-10-11 11:46:08 来源:亿速云 阅读:157 作者:iii 栏目:web开发

这篇文章主要介绍“python怎么返回多个参数”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python怎么返回多个参数”文章能帮助大家解决问题。

因为return能够返回任意种类的对象,所以它也能够返回多个值——需要将这些值封装进一个元组或其他的集合类型。

>>>def multiple(x,y):

...    x = 2                  # Changes local names only

...    y = [3,4]

...    return x,y            # Return new values in a tuple

...

>>>X = 1

>>>L = [1,2]

>>>X,L = multiple(X,L)      # Assign results to caller's names

>>>X,L

(2,[3,4])

看起来这里的代码好像返回了两个值,但是实际上只有一个:一个包含有2个元素的元组,它的圆括号是可选的,这里省略了。在调用返回之后,我们能够使用元组赋值去分解这个返回元组的组成部分。这段代码的实际效果就是通过明确的赋值模拟了其他语言中的输出参数。

顺带说一下,在Python 2.6中,可以在传递给函数的参数中自动解包元组。在Python 2.6中,通过如下头部定义的一个函数:

def f((a,(b,c))):

可以用与期望的结构匹配的元组来调用:f((1,(2,3)))分别给a、b和c赋值为1、2和3。这个def语法在Python 3.0中不再支持,而要像下面这样编写函数:

def f(T): (a,(b,c)) = T

以便在一条显式赋值语句中解包。这种显式形式在Python 3.0和Python 2.6中都有效。参数解包在Python 2.X中是一个含糊并且很少用到的功能。此外,Python 2.6中的函数头部只支持序列赋值的元组形式;更通用的序列赋值(例如,def f((a,[b,c])):)在Python 2.6中因语法问题而无效,并且必须用显式赋值形式。

关于“python怎么返回多个参数”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI