2017-10-09 56 views
1

我想填寫這個python列表。如何填寫這個python列表?

volume = [] 
for x in range(0,num_days): 
    volume[x] = quotations(x).Volume 

我收到錯誤IndexError: list assignment index out of range。代碼有什麼問題以及如何填寫volume列表? quotations是從win2com導入的對象。

我使用python V3.6

+2

使用list.append(),在這種情況下volume.append(....) –

回答

0

改變列表與dict

volume = {} 
for x in range(0,num_days): 
    volume[x] = quotations(x).Volume 
1

你必須append作爲索引是指標設置爲特定值:

volume = [] 
for x in range(0,num_days): 
    volume.append(quotations(x).Volume) 
+1

這是* *的索引。單數*指數*,複數*指數*。 – mentalita

+0

@mentalita Opps,謝謝你指出。固定。 – Ajax1234

1

在Python中,你不需要爲「填補」了列表,就像你在C這樣的靜態語言中做的一樣。列表的大小由語言本身自動管理。出於同樣的原因,Python中的列表被稱爲列表而不是數組。

volume.append(quotations(x).Volume) # instead of volume[x] = quotations(x).Volume 

雖這麼說,你當然可以在一定的指數變化的元素,如果你確定它已經分配,​​這是不是你的情況。

1

您可以使用列表理解來構造volume

volume = [qutations(x).Volume for x in range(0, num_days)]