一個 Python 程式來計算不同的單詞並統計它們的頻率
假設我們有一個單詞列表。這些單詞可能多次出現。我們必須顯示這些單詞的頻率並統計有多少個不同的單詞。
因此,如果輸入像是 words = ["Book", "Sound", "Language", "Computer", "Book", "Language"], 那麼輸出將是 (4, '2 1 2 1'),因為這裡有四個不同的單詞,第一個和第三個單詞出現了兩次。
為了解決這個問題,我們將按照以下步驟操作 -
- d:= 按插入順序儲存項的有序字典
- 對 words 中的每個 w 執行操作
- 如果 d 中有 w,那麼
- d[w] := d[w] + 1
- 否則
- d[w] := 1
- 如果 d 中有 w,那麼
- d 中所有鍵的列表大小的一對和將 d 中的所有值連線成一個字串,然後返回。
示例
讓我們看看以下實現來獲得更好的理解
from collections import OrderedDict def solve(words): d=OrderedDict() for w in words: if w in d: d[w] += 1 else: d[w] = 1 return len(d.keys()), ' '.join([str(d[k]) for k in d.keys()]) words = ["Book", "Sound", "Language", "Computer", "Book", "Language"] print(solve(words))
輸入
["Book", "Sound", "Language", "Computer", "Book", "Language"]
輸出
(4, '2 1 2 1')
廣告