擅长:python、mysql、java
<p>逻辑不正确。在</p>
<p>首先,指数超出范围的原因是因为直线</p>
<pre><code>if lst[x] == lst[x+1]
</code></pre>
<p><code>x</code>在整个循环中正确递增,但是当<code>x</code>位于最后一个索引时,<code>+1</code>位访问不在列表中的索引(例如,大小为5的列表的索引5)。在</p>
<p>此外,您在循环中实际执行的操作似乎不会使您接近模式的值。模式是列表中出现最多的元素。解决这个问题的一种方法是使用字典(<code>dict()</code>),其中“keys”是列表中的元素,“values”是每个元素出现的次数。在</p>
<p>试试这样的方法:</p>
^{pr2}$
<p>这也许不是最“Python式”的解决方案,尽管它是一个直觉的分解逻辑,涉及到寻找模式,至少好像你要做的手在纸上。在</p>