我不是很習慣pyhton和想寫一個函數,它的陣列x
作爲輸入,並給出一個數組背面(select
)僅由的那些條目的輸入數組,滿足一定的屬性,例如在一定範圍內。應該做到這一點的功能如下:選擇數組元素定義一個新的數組
def select(x):
count = 0
select = [] #0
for i in range(0,len(x[0])):
if ((int(x[4][i])+0.5) > x[4][i] > (int(x[4][i])-0.5) ):
select[0][count]=x[0][i] #1
select[1][count]=x[1][i] #2
select[2][count]=x[4][i] #3
count = count + 1
return select
但是,如果我調用該函數,我得到了以下錯誤消息:
IndexError: list index out of range
線使其爲「#1」(和以下2條線也在製造麻煩,我認爲)。我想我必須以某種方式定義數組大小。在那種情況下,我怎麼能在python中做到這一點?正如我所看到的select=[]
是不夠的。
親切的問候
這個問題(我認爲你意識到)是select沒有[0]元素。你能告訴你期望輸入'x'和輸出'select'是否適合某些情況? – Brian