如何在python中返回元组中的对象列表?

考特尼

我对python问题有些困惑。我想编写一个函数,该函数返回嵌套在元组中的所有对象的列表。

例如,我希望能够将元组((((2,4),6,(9,(3,7))))变成[2,4,6,9,3,7]。我真的不确定如何开始,因为元组是不可变的。

fpes

这是递归的一个很好的例子-尽管尼古拉斯已经有了类似的答案。

在这里,我们建立了一个您介绍的元组。我们还设置了一个空列表,您想在其中添加元组。

该函数从元组开始,并遍历每个元素。如果元素是元组,它将再次递归调用该函数,直到获得非元组为止。然后将其插入列表。

tup = (((2,4),6,(9,(3,7))))
listversion = []
def loopthroughtup(tup):
    for i in tup:
        if type(i) == tuple:
            print str(i) + " is a tuple"
            loopthroughtup(i)
        else:
            print str(i) + " is not a tuple"
            listversion.append(i)

loopthroughtup(tup)
print listversion

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章