擅长:python、mysql、java
<p>你的问题是:</p>
<pre><code>while n < times:
if user_answers[n] == answer_list[n]:
score += 1
n += 1
if user_answers[n] != answer_list[n]:
n += 1
</code></pre>
<p>假设times是10,n是9,它执行,<code>n+=1</code>使其为10。很可能,数组中有10个元素(注10是一个例子),现在<code>user_answers[10</code>引发了一个异常,因为有效的变量是<code>0..9</code></p>
<p>要解决此问题,请使用<code>elif</code>:</p>
^{pr2}$
<p>另一种方法是完全去掉<code>else</code>子句</p>
<pre><code>while n < times:
if user_answers[n] == answer_list[n]:
score += 1
n += 1
</code></pre>
<p>请注意,有很多地方可以优化代码,但我将在这里留下答案,让您自己来解决其他问题。在</p>