2013-02-16 95 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]'