Counter で数えて、多い順に「a: 3」のように表示しよう。collections.Counter は、要素の出現回数を自動で数えてくれる特別な辞書です。from collections import Counter
c = Counter('hello') → {'l': 2, 'h': 1, 'e': 1, 'o': 1}c.most_common() → [('l', 2), ('h', 1), ('e', 1), ('o', 1)](多い順).most_common() が返すのは (要素, 回数) のタプルのリストなので、for で変数2つに受け取れます。Counter に word をわたして、各文字の出現回数を数える.most_common() を for でまわし、文字と回数を2つの変数で受け取る'banana' なら a: 3 / n: 2 / b: 1 の3行(多い順)get(c, 0) + 1 で手作業で数えましたが、Counter はそれを1行に。単語の頻度、投票の集計、most_common(3) でアクセス数トップ3、といった分析で大活躍します。Counter(文字列やリスト) で回数を数える.most_common() は多い順に (要素, 回数) のリストを返すa: 3 n: 2 b: 1
全問正解でクエストクリア!
問題 1: ['apple', 'banana', 'apple', 'cherry', 'banana', 'apple'] で最も多い果物と回数を「apple: 3」と表示しよう!
問題 2: 'mississippi' の 's' が何回出てくるか表示しよう!
問題 3: [1, 2, 2, 3, 3, 3] の各数値と回数を小さい順に「1: 1」のように表示しよう!