2016-03-08 22 views
0
返回一個列表separte

我運行這段代碼:numpy.random.randint不以逗號

import numpy as np 
Z=np.ones(10) 
I = np.random.randint(0,len(Z),20). 
print I 

#[9 0 0 1 0 2 3 4 3 3 2 2 7 8 1 9 9 2 1 7] 

#so this instruction does not work 
print Z[I] 

返回一個列表,而不在elelements用逗號這裏提到randint

+0

np.random.randomint(0,len(Z),20)。是bd語法。也許np.random.randint(0,len(Z),20)?? –

+0

@ DaveX,這是一個錯字,我的意思是randint()我編輯了我的代碼 – BetterEnglish

+0

你是什麼意思「不起作用」?它是否給出了不正確的答案?它是否生成錯誤消息?它是否完全沒有輸出?更具體地說,你會得到什麼產出,以及你期望的產出? –

回答

2

該頁面上的輸出顯示解釋器(或repr)輸出。另外,我將它更改爲randint,並刪除了引發語法錯誤的時間段。

import numpy as np 
I = np.random.randint(0, 10, 10) 
print(I) # => [9 4 2 7 6 3 4 5 6 2] 
print(repr(I)) # => array([9, 4, 2, 7, 6, 3, 4, 5, 6, 2]) 
print(type(I)) # => <type 'numpy.ndarray'> 
L = list(I) 
print(L) # => [9, 4, 2, 7, 6, 3, 4, 5, 6, 2] 
1

更改不中隔離randomint to randint適用於我:

Z=np.arange(10) 
I = np.random.randint(0,len(Z),20) 
print I 

#[9 0 0 1 0 2 3 4 3 3 2 2 7 8 1 9 9 2 1 7] 

#so this instruction works for me 
print Z[I] 

# [3 9 6 6 7 7 7 3 7 5 5 2 1 1 5 7 1 0 7 4]