関数を自作しました。汎用性が高いと思うので貼っておきます。
def maxElem( lis ): ''' 与えられたリストの中に、最も多く存在する要素を返す (最大の数の要素が複数ある場合、pythonのsetで先頭により近い要素を返す) ''' L = lis[:]#copy S = set(lis) S = list(S) MaxCount=0 ret='nothing...' for elem in S: c=0 while elem in L: ind = L.index(elem) foo = L.pop(ind) c+=1 if c>MaxCount: MaxCount=c ret = elem return ret
例えば引数のリストが以下のような場合、戻り値は'1'になります。
['1', '1', '17', '51', '1', '17', '17', '58', '17', '1', '1', '1', '1', '1', '1', '1', '54', '54', '1', '1', '1', '1', '1', '1', '1', '1', '54', '1', '32', '32', '1', '51', '51', '51', '54', '51', '1', '1', '1', '1', '1', '54', '54', '54', '54', '1', '1', '1', '1', '1', '1', '22', '1', '54', '1', '58', '58', '51', '51', '51', '1', '7', '51', '1', '54', '32', '1', '1', '7', '1', '54', '54', '1', '1', '1', '1', '1', '1', '1', '31', '31']
リストの要素は数値や文字列が混ざっていても大丈夫です。