在Python中解压嵌套元组

问题描述 投票:0回答:1

我有一个像

((((), A), B), C)
这样的嵌套元组,我从递归函数中检索它。我想按照
A, B, C
的顺序提取元素。有没有一种聪明的方法可以在 python 中做到这一点?

提前非常感谢!

python tuples
1个回答
0
投票

迭代每个元素,如果它是元组,则递归调用其函数,否则追加到结果列表。

t = ((((), "A"), "B"), "C")

def unpack(t, l = None):
    if l == None:
        l = []
    if isinstance(t, tuple):
        for el in t:
            unpack(el, l)
    else:
        l.append(t)
    return l

print(unpack(t))
© www.soinside.com 2019 - 2024. All rights reserved.