2017-04-08 132 views
0

我有以下列表:如何將字符串連接到字符串列表的每個元素?

sentence = ['doc1','doc2','doc3','doc4'] 

我怎麼能在sentece每個elment結束串聯.txt? (*):

['doc1.txt','doc2.txt','doc3.txt','doc4.txt'] 

我試圖列表理解:

'.txt '.join(sentence[:-1]) 

儘管如此,它返回:

'doc1.txt doc2.txt doc3' 

哪項是錯誤的,因爲它是從(*)

不同

回答

2

你並不是試圖將整個字符串連接在一起,只需將.txt添加到每個字符串中即可:

>>> [s + '.txt' for s in sentence] 
['doc1.txt', 'doc2.txt', 'doc3.txt', 'doc4.txt'] 

不確定爲什麼要切掉最後一個元素。

+0

我看到...謝謝你幫我澄清這個問題。 –

+0

我認爲這將是相同的結果.. –

2

另一種方法:

>>> sentence = ['doc1','doc2','doc3','doc4'] 
>>> list(map(lambda x : x + '.txt', sentence)) 
['doc1.txt', 'doc2.txt', 'doc3.txt', 'doc4.txt'] 
1

您可以使用地圖和lambda

map(lambda x:x+'.txt', sentence) 

輸出:

['doc1.txt', 'doc2.txt', 'doc3.txt', 'doc4.txt'] 
相關問題