Python wordcloud 中英文詞云

2021-08-25 14:08:49 字數 3315 閱讀 1913

需要處理的文字(此處以英文為例,因為我覺得這個英文好看)

涉及的txt檔案和py檔案

程式執行ing~

最終的效果圖

#中英文詞云

print("執行前請確保已經安裝 jieba庫!")

import jieba

import wordcloud

#選擇處理

defbgsetting

(bg_flag):

if bg_flag=="1":

bgcolor="white"

elif bg_flag=="2":

bgcolor="black"

return bgcolor

defstopwordssetting

(ex_flag):

if ex_flag=="1":

print("請在此程式的源資料夾中建立:exclude.txt檔案,並在該文字檔案中輸入需要排除的詞彙,一行乙個詞彙!")

ex_f=open("exclude.txt","r")

ex_t=ex_f.read()

stopwords=ex_t.split()

ex_f.close()

else:

stopwords=

return stopwords

defaddwordsssetting

(add_flag):

if add_flag=="1":

add_f=open("add.txt","r")

add_t=add_f.read()

add_f.close()

addwords=add_t.split()

else:

addwords=

return addwords

#文件讀寫與處理

defreadfile

(): f = open("data.txt", "r")

t = f.read()

f.close()

return t

defchinesewc

(t):

add_flag=input("需要新增詞彙請扣1,不需要新增詞彙請按任意鍵繼續:")

addwords=addwordsssetting(add_flag)

if addwords !=:

for word in addwords:

jieba.add_word(word)

words = jieba.lcut(t)

txt = " ".join(words)

font="msyh.ttc"

return txt,font

defengwc

(t):

txt=t.replace("\n"," ")

return txt

#輸入def

getinputs

(): print("請將所需轉換的txt檔案儲存於此程式的源資料夾中,並且命名為:data.txt!")

ex_flag=input("需要排除詞彙請扣1,不需要排除詞彙請按任意鍵繼續:")

while bg_flag!="1"

and bg_flag!="2":

bg_flag=input("需要生成白底請扣1,需要生成黑底請扣2,其他輸入為無效輸入!")

language_flag=input("中文詞云請扣1,英文詞云請扣2:")

while language_flag!="1"

and language_flag!="2":

language_flag=input("中文詞云請扣1,英文詞云請扣2,其他輸入為無效輸入!")

bgcolor=bgsetting(bg_flag)

stopwords=stopwordssetting(ex_flag)

return w,h,maxwords,stopwords,bgcolor,language_flag

#輸出def

getimagec

(w,h,bgcolor,font,maxwords,stopwords,txt):

wc= wordcloud.wordcloud( \

width =w, height =h,\

background_color = bgcolor,\

font_path =font,\

max_words=maxwords,\

stopwords=stopwords)

wc.generate(txt)

wc.to_file("result.png")

defgetimagee

(w,h,bgcolor,maxwords,stopwords,txt):

wc= wordcloud.wordcloud( \

width =w, height =h,\

background_color = bgcolor,\

max_words=maxwords,\

stopwords=stopwords)

wc.generate(txt)

wc.to_file("result.png")

#主函式

defmain

(): w,h,maxwords,stopwords,bgcolor,language_flag=getinputs()

t=readfile()

if language_flag=="1":

txt,font=chinesewc(t)

getimagec(w,h,bgcolor,font,maxwords,stopwords,txt)

print("sucessfully")

else:

txt=engwc(t)

getimagee(w,h,bgcolor,maxwords,stopwords,txt)

print("sucessfully")

try:

main()

except:

print("tat")

python WordCloud詞云安裝

解決辦法 先安裝wrapt 1.10.11 cp36 cp36m win amd64.whl 再安裝wordcloud 1.3.2 cp36 cp36m win amd64.whl 成功驗證 發現成功匯入wordcloud的包 測試 fromwordcloudimportwordcloud f op...

Python wordcloud庫的使用

1 wordcloud庫基本介紹 1 wordcloud庫概述 wordcloud是優秀的詞云展示第三方庫 詞云以詞語為基本單位,更加直觀和藝術的展示文字 2 wordcloud庫的安裝 cmd命令列 pip install wordcloud 2 wordcloud庫使用說明 1 wordclou...

Python wordcloud庫學習小結

w wordcloud.wordcloud 方法描述例子 w.generate txt 向wordcloud物件w中載入文字txt w.generate python and wordcloud w.to file filename 將詞云輸出為影象檔案,png或.jpg格式 w.to file o...