Python - 将元组列表转换为int列表

时间:2015-04-06 13:50:38

标签: python list tuples

我有

x = [[1], [2, 3], [1, (3, 5)], [(3, 9), 7, 5]]

我想要

x = [[1], [2, 3], [1, 3, 5], [3, 9, 7, 5]]

我该怎么做?

2 个答案:

答案 0 :(得分:1)

你可以通过一系列for循环实现这一目标。

>>> x = [[1], [2, 3], [1, (3, 5)], [(3, 9), 7, 5]]
>>> l = []
>>> for i in x:
        m = []
        for j in i:
            if isinstance(j, tuple):
                m.extend(j)
            else:
                m.append(j)
        l.append(m)


>>> l
[[1], [2, 3], [1, 3, 5], [3, 9, 7, 5]]

答案 1 :(得分:-1)

这是一种非常沮丧的方法。把它作为一个宣言,反对把很多lambdas,map,减少内部列表理解,以回答初学者的问题。

>>> x = [[1], [2, 3], [1, (3, 5)], [(3, 9), 7, 5]]
>>> eval(str(x).replace('(', '').replace(')', ''))
[[1], [2, 3], [1, 3, 5], [3, 9, 7, 5]]