我有名字的列表:轉換元素列表中的字符串
a = ['Maria','Luis','Andrea']
我想將它們放在一個字符串,所以我有這樣的:
names = ''
for name in a:
names = names +',' ' ' + name
有一個問題,在第一次迭代中,我在開頭添加了一個逗號和一個空格,我知道我可以刪除逗號和空格,但我寧願只是沒有它。
此外,這可以在lambda函數中完成嗎?
我有名字的列表:轉換元素列表中的字符串
a = ['Maria','Luis','Andrea']
我想將它們放在一個字符串,所以我有這樣的:
names = ''
for name in a:
names = names +',' ' ' + name
有一個問題,在第一次迭代中,我在開頭添加了一個逗號和一個空格,我知道我可以刪除逗號和空格,但我寧願只是沒有它。
此外,這可以在lambda函數中完成嗎?
這就是str.join
方法是什麼:
的方法concatinates全部來自可迭代的元素用字符串join
被呼籲爲分離器。
一些例子:
>>> 'SEP'.join(a)
'MariaSEPLuisSEPAndrea'
>>> ''.join(a)
'MariaLuisAndrea'
它可以被看作是str.split
對方:
>>> s = ', '.join(a)
>>> s
'Maria, Luis, Andrea'
>>> s.split(', ')
['Maria', 'Luis', 'Andrea']
讓str.join()
句柄:
>>> a = ['Maria','Luis','Andrea']
>>> ", ".join(a)
'Maria, Luis, Andrea'
正確的Python的方式在其他的答案中給出的",".join(...)
方法。然而,語言不可知方法會是這樣的:
for i in range(len(a)):
if i == 0:
names += a[i]
else:
names += ',' + a[i]
難道你不覺得只是有點內疚回答明顯的重複,而不是投票關閉它們? – cimmanon
@cimmanon你絕對有一個有效的點。我經常不會涉及到一般的Python,當我這樣做時,我通常會投票結束類似的情況,但是在這裏急忙回答。所以,是的,我感到內疚。謝謝 :) – alecxe