2012-11-09 17 views
0

例如:Python:我如何獲取列表的列表,將每個元素轉換爲字符串,並返回列表的列表?

list = [[11,2,3,5],[5,3,74,1,90]] 

返回同樣的事情,只是一切都是海峽,而不是一個int。 我想能夠在它們上使用.join。謝謝!

+2

順便說一句不要調用你的列表'list',因爲這會與python關鍵字衝突。 – DaveP

+0

http://stackoverflow.com/questions/952914/making-a-flat-list-out-of-list-of-lists-in-python和str列表理解中的「項目」。 – KevinL

回答

5

如果你永遠只能去2只列出了深:

>>> l = [[11, 2, 3, 5], [5, 3, 74, 1, 90]] 
>>> [[str(j) for j in i] for i in l] 
[['11', '2', '3', '5'], ['5', '3', '74', '1', '90']] 
+0

這正是我所需要的。我想出了類似的東西,但如果沒有這個列表理解,實現起來會更困難。謝謝! – Aei

2

我會使用這一個名單,補償和map

[ map(str,x) for x in lst ] 

但我想py3.x在那裏(yuck)需要增加list

[ list(map(str,x)) for x in lst ] 

作爲一個側面說明,你無法在此列表中,我們反正回到上使用join。我猜你想要做這樣的事情:

for x in lst: 
    print ("".join(x)) 

如果是這樣的話,你可以放棄轉換一起,只是做它,當你加入:

for x in lst: 
    print ("".join(str(item) for item in x)) 
相關問題