紅樓夢人物出場次數統計

2021-10-23 17:53:00 字數 1465 閱讀 8535

這個也是學習過程中的乙個成果吧,希望大家能批評指正。

紅樓夢人物出場次數統計。亮點在於,考慮了人物的別稱,以及有較為豐富的排除詞庫。如鳳姐的稱謂就有許多,鳳辣子,鳳姐,王熙鳳等等,還有黛玉,有林黛玉,林妹妹,林丫頭等等。很多人如果不把這些考慮在內,就容易導致錯誤的結果。

不得不說,寶玉是絕對的主角。人們通常認為黛玉是第二主角,寶黛戀是全文的絕對主線。結果出場次數最多的除了寶玉,卻是賈母、鳳姐和王夫人。接下來才是黛玉。挺吃驚的,不是嗎?

下面上**:

這個也是學習過程中的乙個成果吧,希望大家能批評指正。

#caldreamsv1.py

import jieba

txt = open("dreams.txt", "r", encoding="utf-8").read()

excludes =

words = jieba.lcut(txt)

counts = {}

for word in words:

if len(word) == 1:

continue

elif word == "老太太" or word == "太太" or word == "老祖宗" or word == "史太君":

rword = "賈母"

elif word == "老爺":

rword = "賈政"

elif word == "寶二爺":

rword = "寶玉"

elif word == "王熙鳳" or word == "熙鳳" or word == "鳳辣子":

rword = "鳳姐"

elif word == "林黛玉" or word == "瀟湘妃子" or word == "林丫頭" or word == "林妹妹":

rword = "黛玉"

elif word == "寶姑娘" or word == "寶丫頭" or word == "蘅蕪君" or word == "寶姐姐":

rword = "寶釵"

else:

rword = word

counts[rword] = counts.get(rword, 0) + 1

for word in excludes :

del counts[word]

items = list(counts.items())

items.sort(key = lambda x:x[1], reverse=true)

print("《紅樓夢》人物出場次數")

for i in range(10):

word , count = items[i]

print("".format(word, count))

紅樓夢人物與詩詞

可嘆停機德,堪憐詠絮才。玉帶林中掛,金簪雪裡埋。詠絮其實是詠雪,女子詠雪。指女子工於吟詠,有非凡的才華。賈不假,白玉為堂金作馬。阿房宮,三百里,住不下金陵乙個史。東海缺少白玉床,龍王請來金陵王。豐年好大雪,珍珠如土金如鐵。史湘雲 翠縷,和襲人等大丫鬟一樣是從賈母身邊派過去的 為官的,家業凋零 富貴的...

python 統計紅樓夢人員姓名出現次數

使用到jieba庫 python 第三方中文分詞庫 1 安裝jieba庫 2 紅樓夢 txt 文件 import jieba txt open 紅樓夢.txt r encoding utf 8 read wenben jieba.lcut txt 使用精確模式對文字進行分詞 counts 通過鍵值對...

Python3紅樓夢人名出現次數統計分析

本程式流程是讀取紅樓夢txt檔案 使用jieba進行分詞 借助counter讀取各人名出現次數並排序 使用matplotlib將結果視覺化 這裡的統計除了將 熙鳳 出現的次數合併到 鳳姐 中外並沒有其他處理,但應該也大體能反映人物提及次數情況 條形圖 餅狀圖 此函式用於繪製條形圖 defshowna...