<p>我想把不同书籍的份数存储在一个列表中
<code>[10,14,12,16,42,23]</code>。这里的第一个元素,即<code>index[0]</code>表示第一本书有10个副本,第二本书<code>(index[1])</code>有14个这样的副本。但问题是我不知道有多少种书,也就是说列表中的元素总数是未知的。所以我创建了一个空列表如下:</p>
<pre><code>li = []
</code></pre>
<p>之后,我运行for循环,并在每次迭代中添加和更新list元素,如下所示:</p>
<pre><code>for x in range(5):
li[x] = li[x] + 1
</code></pre>
<p>但我得到以下错误:
<code>li[x] = li[x] + 1
IndexError: list index out of range</code>
因为<code>li[x]</code>没有赋值给<code>0</code>或任何值。我的问题是,当我不知道元素的数量并且我动态地附加列表元素时,如何用零来分配列表。请提出一些方法来达到我的要求。你知道吗</p>
<p>可以将0指定为列表中的值。
您可以尝试:</p>
<pre><code>>>> for x in range(5):
li.append(0)
>>> print li
[0, 0, 0, 0, 0]
>>> for x in range(5):
li[x] = li[x] + 1
>>> print li
[1, 1, 1, 1, 1]
</code></pre>