将字符串列表转换为字符串中的一个列表

时间:2015-10-08 21:51:05

标签: python string list

我要做的是转过来

['p', 'y', 't', 'h', 'o', 'n']

进入这个:

['python']

好的,如果我想让这个列表中的每个列表都成为一个单词

[['f', 'e', 'd'], ['d', 'e', 'f'], ['w', 'o', 'r', 'd']]

进入这个

[['fed'], ['def'], ['word']]

3 个答案:

答案 0 :(得分:2)

reduce(lambda a,b:a+b,['p','y','t','h','o','n'])

你可能会在这堂课上失败:/学习硬填充

y=[['f', 'e', 'd'], ['d', 'e', 'f'], ['w', 'o', 'r', 'd']]
map(lambda x:reduce(lambda a,b:a+b,x),y)

答案 1 :(得分:1)

作为一般解决方案,你可以这样:

lst = [['f', 'e', 'd'], ['d', 'e', 'f'], ['w', 'o', 'r', 'd']]
>>> map(''.join, lst)
['fed', 'def', 'word']

这将基本上将列表中的所有元素逐个(子列表)提供给作为map内置函数的第一个参数提供的函数,''.join是我们的案件。正如您所料,它将提供一个新列表,其中包含通过加入子列表获得的字符串。

答案 2 :(得分:0)

如果您只想使用for循环,liststring方法:

>>> aList = [['f', 'e', 'd'], ['d', 'e', 'f'], ['w', 'o', 'r', 'd']]
>>> newList = []
>>> for X in aList:
...     newList.append("".join(X))
... 
>>> newList
['fed', 'def', 'word']