Maison > Article > développement back-end > Comment compter la fréquence des mots dans le texte en python
Lorsque nous lisons un article ou même un roman, et que nous voulons savoir quel mot apparaît le plus dans le texte et combien de fois il apparaît, que devons-nous faire ? Python peut faire ce travail avec un code simple. Vous pouvez également développer et déduire qui est le protagoniste, sous quel nom ou quelle phrase apparaît le plus souvent dans le roman ? Quel est le mantra ? N'est-ce pas très intéressant ? Venez l'essayer.
Idée :
consiste d'abord à extraire chaque caractère et à le mettre dans la liste
puis à filtrer ; Supprimez les signes de ponctuation
Enfin, utilisez un dictionnaire pour accumuler la fréquence d'un certain mot.
Recommandations associées : "Tutoriel vidéo Python"
Ce qui suit prend le roman Fanghua comme exemple :
#coding:utf-8 word_lst = [] word_dict = {} exclude_str = ",。!?、()【】<>《》=:+-*—“”…" with open("芳华.txt","r") as fileIn ,open("芳华字频.txt",'w') as fileOut: # 添加每一个字到列表中 for line in fileIn: for char in line: word_lst.append(char) # 用字典统计每个字出现的个数 for char in word_lst: if char not in exclude_str: if char.strip() not in word_dict: # strip去除各种空白 word_dict[char] = 1 else : word_dict[char] += 1 # 排序 # x[1]是按字频排序,x[0]则是按字排序 lstWords = sorted(word_dict.items(), key=lambda x:x[1], reverse=True) # 输出结果 (前100) print ('字符\t字频') print ('=============') for e in lstWords[:100]: print ('%s\t%d' % e) fileOut.write('%s, %d\n' % e)
Résultats de sortie
字符 字频 ============= 的 3641 一 1834 了 1748 是 1506 不 1267 我 1229 她 1156 他 985 小 962 个 921 人 866 在 853 刘 745 丁 728 那 723 上 705 来 698 峰 691 们 684 就 667 说 577 有 572 到 564 这 562 里 537 儿 520 嫚 499 子 494 都 492 着 491 大 482 么 462 出 460 看 441 也 415 得 404 下 383 时 367 还 366 女 349 地 340 头 331 好 327 没 326 去 321 过 320 老 317 跟 311 你 309 把 307 对 303 年 301 会 300 生 291 为 289 发 289 要 281 何 280 亲 273 后 272 给 267 和 266 天 265 家 259 手 251 长 251 想 249 多 242 自 241 开 240 当 236 兵 235 样 232 郝 230 可 228 起 225 被 224 成 216 十 215 什 215 以 209 事 209 从 209 点 208 能 203 两 203 回 202 门 201 所 195 淑 188 雯 188 只 188 心 184 身 184 让 179 道 179 母 174 做 173 话 173 最 172 >>>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!