2017-08-31 39 views
-1

所以,我有一個項目中,我有一個字符串列表:做字符串列表與每個值的字符串在新行

outputs = ['cow', 'chicken', 'pig'] 

我需要把它們變成一個字符串,用換行分隔的每個值,如下所示:

cow 
chicken 
pig 

我發現了一個溶液在python list to newline separated value,但它使用像這樣的列表:

outputs = [['cow'], ['chicken'], ['pig']] 

,每當我跑:

answer = "\n".join(map(lambda x: x[0], outputs)) 
print(answer) 

它返回'c',如同在這個問題中的所有其他答案的情況。

+5

你試過'「\ n」.join(outputs)'? –

+0

糟糕,無法找到您標記爲重複的文章。抱歉使用你的時間。 –

回答

4

您可以通過另一個字符串通過簡單地使用連接字符串列表:

str = "\n".join(outputs) 
0

你的問題是,當你這樣做:

map(lambda x: x[0], outputs) 

你創建由第一個字母的迭代在outputs每個元素:

>>> outputs = ['cow', 'chicken', 'pig'] 
>>> list(map(lambda x: x[0], outputs)) 
['c', 'c', 'p'] 

你過想這。在這種情況下,您甚至不需要使用map。你可以簡單地使用str.join

'\n'.join(outputs) 
相關問題