0

我有以下列表: [['a','b','c'],['d','e'],['f','g','h','i',j]]

我想要这样的清单: ['abc','de','fghij']

这怎么可能?

[编辑]:事实上,我的列表可能有字符串和数字,

l = [[1,2,3],[4,5,6], [7], [8,'a']]

并且将是:

l = [123,456, 7, 8a]

谢谢大家,

4

2 回答 2

4

您可以''.join为所有子列表应用方法。这可以使用map函数或使用列表推导来完成

map函数运行作为第一个参数传递给可迭代对象的所有元素的函数

initial = ['a', 'b', 'c'], ['d', 'e'], ['f', 'g', 'h', 'i', 'j']]
result = map(''.join, initial)

也可以使用列表理解

initial = ['a', 'b', 'c'], ['d', 'e'], ['f', 'g', 'h', 'i', 'j']]
result = [''.join(sublist) for sublist in initial]
于 2013-06-29T10:12:08.377 回答
4

尝试

>>> L = [['a','b','c'],['d','e'],['f','g','h','i','j']]
>>> [''.join(x) for x in L]
['abc', 'de', 'fghij']
于 2013-06-29T10:13:44.367 回答