擅长:python、mysql、java
<p>问题在于<code>if list1.index(num) == 0</code>,它将<code>results</code>重置为1,从而丢失了以前的计数。删除它并将<code>result</code>设置为列表中的第一项。为了减少迭代次数,您还应该迭代<code>set</code>个数字</p>
<pre><code>def mostrepeating(list1=None):
if list1 is None:
print('No list was received in the function.')
else:
numnum, numnum2, result = 0, 0, 0
s = set(l1)
result = list1[0]
for num in s:
numnum2 = list1.count(num)
if numnum2 > numnum:
result = num
numnum = numnum2
print(result)
</code></pre>