効率が向上した Python の項目頻度カウント
リスト内の項目の出現回数をカウントすることは、一般的なプログラミング タスクです。この質問では、Python でこの問題に対するより効率的なアプローチを検討します。
提示された最初のコードは機能しますが、リストを 2 回反復する必要があるため、最適なパフォーマンスが得られません。主な課題は、リストを冗長にパスすることなく項目の出現をカウントする Python 的な方法を見つけることにあります。
解決策は、コレクション モジュールの Counter クラスを利用することにあります。頻度カウント用に特別に設計された Counter は、目的の結果を達成するための簡潔かつ効率的な方法を提供します。次のコードはその使用法を示しています。
<code class="python">from collections import Counter words = "apple banana apple strawberry banana lemon" Counter(words.split())</code>
このコード スニペットは、入力文字列を個々の単語に分割し、結果のリストを Counter に渡します。結果は、キーが一意の単語を表し、値が対応するカウントを表す辞書のようなオブジェクトです。この例では、出力は次のようになります。
<code class="python">Counter({'apple': 2, 'banana': 2, 'strawberry': 1, 'lemon': 1})</code>
Counter クラスは内部でハッシュ テーブルを使用してデータを保存し、定数時間の検索および挿入操作を提供します。このアプローチにより、2 回目の反復が不要になり、項目頻度カウントのパフォーマンスが大幅に向上します。
以上がPython で項目の出現を効率的にカウントするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。