2013-07-23 125 views
0

我是Python新手。我需要知道如何將整數列表轉換爲字符串列表。所以,將整數列表轉換爲字符串列表

>>>list=[1,2,3,4] 

我想該列表轉換爲該:

>>>print (list) 
['1','2','3','4'] 

而且,我可以添加一個字符串列表,使它看起來像這樣?

1234 

回答

7

您可以使用列表綜合

>>> my_list = [1, 2, 3, 4] 
>>> [str(v) for v in my_list] 
['1', '2', '3', '4'] 

map()

>>> str_list = map(str, my_list) 
>>> str_list 
['1', '2', '3', '4'] 

在Python 3,你需要使用 - list(map(str, my_list))

對於第二部分,您可以使用join()

>>> ''.join(str_list) 
'1234' 

請不要命名列表list。它陰影內置list

+1

' map()'返回Python 3中的地圖對象。你需要做'list(map(...))'將其轉換爲列表。 –

+0

用於鏈接到地圖()和衛冕列表() – Ber

+0

+1非常感謝Rohit!從你學到很多東西! –

0
l = map(str,l) 

將工作,但可能沒有什麼意義,如果你不知道什麼地圖

l = [str(x) for x in l] 

可就在這時更有意義。

''.join(["1","2","3"]) == "123" 
+0

不要使用'list'作爲引用的名稱,因爲它是'list'類中內置的名稱。這樣做會在以後造成很大的悲傷! – Ber

+0

非常感謝彼得!從你學到很多東西! –

+0

啊對,我剛剛複製過大聲笑 – placeybordeaux

2
>>>l=[1,2,3,4] 

我已經修改了你的例子不能使用名稱list - 它陰影實際內置list,這將導致神祕失敗。

這裏是你如何使之成爲一個字符串列表:

l = [str(n) for n in l] 

這裏是你如何讓他們都相互鄰接:

all_together = ''.join(l) 
+0

非常感謝Brian!從你學到很多東西! –

0

使用打印:

>>> mylist = [1,2,3,4] 
>>> print ('{}'*len(mylist)).format(*mylist) 
1234