将字符串列表的列表转换为有效的字符串列表

时间:2017-10-20 15:31:41

标签: python string list

我有一个字符串列表列表,我想将其转换为字符串列表,在每个列表项之间添加一个空格。例如

original_list = [['the', 'cat', 'in', 'the', 'hat'], ['fat', 'cat', 'sat', 'on', 'the', 'mat']]

desired_output = ['the cat in the hat', 'fat cat sat on the mat']

我知道我可以用这个来做:

desired_output
for each in original_list:
    desired_output.append(' '.join(each))

但是当我处理大量数据时,理想情况下是寻找更有效的方法来实现这一目标。

2 个答案:

答案 0 :(得分:4)

使用str.join的空格' '

original_list = [['the', 'cat', 'in', 'the', 'hat'], ['fat', 'cat', 'sat', 'on', 'the', 'mat']]
final_list = [' '.join(i) for i in original_list]

输出:

['the cat in the hat', 'fat cat sat on the mat']

答案 1 :(得分:1)

另一种pythonic和简单的方法,在Python 3中,可以使用map,另一个SO讨论说它应该更快,它会是这样的:

original_list = [['the', 'cat', 'in', 'the', 'hat'], ['fat', 'cat', 'sat', 'on', 'the', 'mat']]

#              (------where magic happens--------)
desired_list = list(map(' '.join, original_list ))

#print
#output ['the cat in the hat', 'fat cat sat on the mat']