高效查找清單中最常見的元素
在Python 中,確定清單中最常出現的元素可能會帶來挑戰,特別是當列表項目不可散列時。為了解決這個問題,我們提出了一種有效的方法,在出現平局的情況下優先考慮索引最低的項目。
考慮以下 Python 函數:
def most_common(lst): return max(set(lst), key=lst.count)
此函數透過消除重複項來操作透過將輸入清單轉換為集合來取得清單。然後使用 max() 函數來識別集合中計數最高的元素。 key 參數指定比較應基於每個元素的計數,由 lst.count 方法決定。
為了說明這一點,請考慮以下範例:
>>> most_common(['duck', 'duck', 'goose']) 'duck'
在此例如,「duck」出現兩次,而「goose」只出現一次。因此,“duck”作為最常見的元素返回。
>>> most_common(['goose', 'duck', 'duck', 'goose']) 'goose'
在這種情況下,「goose」和「duck」都會出現兩次。然而,由於“goose”具有較低的索引,因此它作為最常見的元素返回。
這種方法可以有效地找到清單中最常見的元素,即使元素不可散列,並且它會優先考慮在平局的情況下索引最低的項目。
以上是如何有效地找到 Python 列表中最常見的元素,即使是不可哈希的項?的詳細內容。更多資訊請關注PHP中文網其他相關文章!