擅长:python、mysql、java
<p>必须在循环外初始化计数器:</p>
<pre><code>mp = 0
mg = 0
me = 0
for x in range(0, len(score)):
# same as before
</code></pre>
<p>否则每次迭代都会被重置!要使代码更具python风格,请考虑以下提示:</p>
<ul>
<li>形式为<code>x >= i and x <= j</code>的条件可以更简洁地写成<code>i <= x <= j</code></li>
<li>遍历列表的惯用方法是使用迭代器,而不显式使用索引</li>
<li>这些条件是互斥的,因此应该使用<code>elif</code></li>
<li>使用<code>+=</code>递增变量</li>
</ul>
<p>这就是我的意思:</p>
<pre><code>mp = mg = me = 0
for s in score:
if 1 <= s <= 3:
review.append("poor")
mp += 1
elif 4 <= s <= 6:
# and so on
</code></pre>