1

我想转换

[(3L, (2L,)), (108L, (11L,))]

(3L, (2L,), 108L, (11L,))

我尝试使用此代码来执行此操作

 ["".join(map(str, val)) for val in list]

我的输出变成了

('3(2L,)', '108(11L,)')

我将如何正确转换这个..?

谢谢!

4

3 回答 3

2
In [11]: lst = [(3L, (2L,)), (108L, (11L,))]

In [12]: tuple(el for subl in lst for el in subl)
Out[12]: (3L, (2L,), 108L, (11L,))
于 2013-04-12T12:58:04.507 回答
1

另一种选择是来自 itertools的链:

In [1]: from itertools import chain
In [2]: a = [(3L, (2L,)), (108L, (11L,))]
In [3]: tuple(chain(*a))
Out[3]: (3L, (2L,), 108L, (11L,))
于 2013-04-12T13:30:19.110 回答
1
import itertools

L = [(3L, (2L,)), (108L, (11L,))]
tuple(chain.from_iterable(L))
于 2013-04-12T13:43:41.720 回答