我对python问题有些困惑。我想编写一个函数,该函数返回嵌套在元组中的所有对象的列表。
例如,我希望能够将元组((((2,4),6,(9,(3,7))))变成[2,4,6,9,3,7]。我真的不确定如何开始,因为元组是不可变的。
这是递归的一个很好的例子-尽管尼古拉斯已经有了类似的答案。
在这里,我们建立了一个您介绍的元组。我们还设置了一个空列表,您想在其中添加元组。
该函数从元组开始,并遍历每个元素。如果元素是元组,它将再次递归调用该函数,直到获得非元组为止。然后将其插入列表。
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] 删除。
我来说两句