2013-02-16 81 views
0

我有一個列表[1,2,4,7,5,2]我想擺脫逗號使其成爲[1 2 4 7 5 2] 我該怎麼辦呢?擺脫列表中的逗號python

np.random.randint(0,4,12)將打印出像[0 3 4 1 3 4 2 1 2 4 3 4]和多數民衆的那種事情,我想:)

+2

你的意思是你想打印它嗎?你不能在你的程序中表現它,因爲這就是列表的工作方式。 – wrgrs 2013-02-16 11:32:04

+0

要編寫for循環並自己以此格式打印它們的唯一方法。 – 2013-02-16 11:34:26

+2

實際上,'str.join'比for-loop要容易得多(也更加pythonic)。 – 2013-02-16 11:34:46

回答

0

如果你想一個numpy的ndarray,使用:

np.array([1, 2, 4, 7, 5, 2]) 
3

你可以這樣做:

out = '[' + ' '.join(str(item) for item in numbers)+ ']' 
print out 
+0

你不需要在連接中的列表理解 - 擺脫方括號將節省時間和內存。 – Volatility 2013-02-16 11:44:03

+0

我注意到了這一點,但不知道爲什麼。看起來'數字中的item(str)'是一個生成器,而括號實際上使它創建列表。正確? – wrgrs 2013-02-16 11:48:06

+0

是的,但'join()'也接受一個生成器表達式,所以不需要。 – martineau 2013-02-16 11:49:54

2
In [7]: data = [1,2,4,7,5,2] 
In [11]: '[{}]'.format(' '.join(map(str, data))) 
Out[11]: '[1 2 4 7 5 2]' 

,或者

In [14]: str(data).replace(',','') 
Out[14]: '[1 2 4 7 5 2]'