ホームページ > バックエンド開発 > Python チュートリアル > ハッシュ化できない項目であっても、Python リストで最も一般的な要素を効率的に見つけるにはどうすればよいですか?

ハッシュ化できない項目であっても、Python リストで最も一般的な要素を効率的に見つけるにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-24 15:02:11
オリジナル
352 人が閲覧しました

How to Efficiently Find the Most Common Element in a Python List, Even With Non-Hashable Items?

リスト内の最も一般的な要素を効率的に見つける

Python では、リスト内で最も頻繁に出現する要素を特定することが困難になる場合があります。特にリスト項目がハッシュ可能ではない場合。これに対処するために、同点の場合にインデックスが最も低い項目を優先する効率的なアプローチを紹介します。

次の Python 関数を考えてみましょう。

def most_common(lst):
    return max(set(lst), key=lst.count)
ログイン後にコピー

この関数は、まず入力リストをセットに変換します。次に、max() 関数を使用して、セットから最もカウントの高い要素を特定します。 key パラメーターは、 lst.count メソッドによって決定される各要素の数に基づいて比較することを指定します。

説明のために、次の例を考えてみましょう。

>>> most_common(['duck', 'duck', 'goose'])
'duck'
ログイン後にコピー

この例ではたとえば、「アヒル」は 2 回出現しますが、「ガチョウ」は 1 回だけ出現します。したがって、「アヒル」が最も一般的な要素として返されます。

>>> most_common(['goose', 'duck', 'duck', 'goose'])
'goose'
ログイン後にコピー

このシナリオでは、「ガチョウ」と「アヒル」の両方が 2 回出現します。ただし、「goose」はより低いインデックスを持っているため、最も一般的な要素として返されます。

このアプローチは、要素がハッシュ可能でない場合でも、リスト内で最も一般的な要素を効果的に見つけ、優先順位を付けます。同点の場合、インデックスが最も低い項目。

以上がハッシュ化できない項目であっても、Python リストで最も一般的な要素を効率的に見つけるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート