Python統(tǒng)計(jì)文本詞匯出現(xiàn)次數(shù)的實(shí)例代碼
問題描述
有時(shí)在遇到一個(gè)文本需要統(tǒng)計(jì)文本內(nèi)詞匯的次數(shù) 的時(shí)候 ,可以用一個(gè)簡(jiǎn)單的python程序來實(shí)現(xiàn)。
解決方案
首先需要的是一個(gè)文本文件(.txt)格式(文本內(nèi)詞匯以空格分隔),因?yàn)樾枰氖且粋€(gè)程序,所以要考慮如何將文件打開而不是采用復(fù)制粘貼的方式。這時(shí)就要用到open()的方式來打開文檔,然后通過read()讀取其中內(nèi)容,再將詞匯作為key,出現(xiàn)次數(shù)作為values存入字典。
圖 1 txt文件內(nèi)容
再通過open和read函數(shù)來讀取文件:
open_file=open("text.txt") file_txt=open_file.read()
然后再創(chuàng)建一個(gè)空字典,將所有出現(xiàn)的每個(gè)詞匯作為key保存到字典中,對(duì)文本從開始到結(jié)束,循環(huán)處理每個(gè)詞匯,并將詞匯設(shè)置為一個(gè)字典的key,將其value設(shè)置為1,如果已經(jīng)存在該詞匯的key,說明該詞匯已經(jīng)使用過,就將value累積加1。
代碼示例:
def wordcount(readtxt): readlist = readtxt.split() dict1={} for every_world in readlist: if every_world in dict1: dict1[every_world] += 1 else: dict1[every_world] = 1 return dict1 print(wordcount(file_txt))
這里加了def函數(shù)把該程序封裝成一個(gè)函數(shù)。
最后輸出得到詞匯出現(xiàn)的字典:
圖 2 形成字典
ps:下面看下python統(tǒng)計(jì)文本中每個(gè)單詞出現(xiàn)的次數(shù)
1.python統(tǒng)計(jì)文本中每個(gè)單詞出現(xiàn)的次數(shù):
#coding=utf-8 __author__ = 'zcg' import collections import os with open('abc.txt') as file1:#打開文本文件 str1=file1.read().split(' ')#將文章按照空格劃分開 print "原文本:\n %s"% str1 print "\n各單詞出現(xiàn)的次數(shù):\n %s" % collections.Counter(str1) print collections.Counter(str1)['a']#以字典的形式存儲(chǔ),每個(gè)字符對(duì)應(yīng)的鍵值就是在文本中出現(xiàn)的次數(shù)
2.python編寫生成序列化:
__author__ = 'zcg' #endcoding utf-8 import string,random field=string.letters+string.digits def getRandom(): return "".join(random.sample(field,4)) def concatenate(group): return "-".join([getRandom() for i in range(group)]) def generate(n): return [concatenate(4) for i in range(n)] if __name__ =='__main__': print generate(10)
3.遍歷excel表格中的所有數(shù)據(jù):
__author__ = 'Administrator' import xlrd workbook = xlrd.open_workbook('config.xlsx') print "There are {} sheets in the workbook".format(workbook.nsheets) for booksheet in workbook.sheets(): for col in xrange(booksheet.ncols): for row in xrange(booksheet.nrows): value=booksheet.cell(row,col).value print value
其中xlrd需要百度下載導(dǎo)入這個(gè)模塊到python中
4.將表格中的數(shù)據(jù)整理成lua類型的一個(gè)格式
#coding=utf-8 __author__ = 'zcg' #2017 9/26 import xlrd fileOutput = open('Configs.lua','w') writeData="--@author:zcg\n\n\n" workbook = xlrd.open_workbook('config.xlsx') print "There are {} sheets in the workbook".format(workbook.nsheets) for booksheet in workbook.sheets(): writeData = writeData+'AT' +booksheet.name+' ={\n' for col in xrange(booksheet.ncols): for row in xrange(booksheet.nrows): value = booksheet.cell(row,col).value if row ==0: writeData = writeData+'\t'+'["'+value+'"]'+'='+'{' else: writeData=writeData+'"'+str(booksheet.cell(row,col).value)+'", ' else: writeData=writeData+'},\n' else: writeData=writeData+'}\n\n' else : fileOutput.write(writeData) fileOutput.close()
總結(jié)
到此這篇關(guān)于Python統(tǒng)計(jì)文本詞匯出現(xiàn)次數(shù)的實(shí)例代碼的文章就介紹到這了,更多相關(guān)Python統(tǒng)計(jì)文本詞匯出現(xiàn)次數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Python統(tǒng)計(jì)列表元素出現(xiàn)次數(shù)的方法示例
- 利用Python3實(shí)現(xiàn)統(tǒng)計(jì)大量單詞中各字母出現(xiàn)的次數(shù)和頻率的方法
- python 統(tǒng)計(jì)list中各個(gè)元素出現(xiàn)的次數(shù)的幾種方法
- python統(tǒng)計(jì)字符串中字母出現(xiàn)次數(shù)代碼實(shí)例
- python統(tǒng)計(jì)文章中單詞出現(xiàn)次數(shù)實(shí)例
- Python實(shí)現(xiàn)的統(tǒng)計(jì)文章單詞次數(shù)功能示例
- Linux上使用Python統(tǒng)計(jì)每天的鍵盤輸入次數(shù)
- python 統(tǒng)計(jì)數(shù)組中元素出現(xiàn)次數(shù)并進(jìn)行排序的實(shí)例
- Python實(shí)現(xiàn)統(tǒng)計(jì)給定列表中指定數(shù)字出現(xiàn)次數(shù)的方法
- 5種Python統(tǒng)計(jì)次數(shù)方法技巧
相關(guān)文章
python實(shí)現(xiàn)Decorator模式實(shí)例代碼
這篇文章主要介紹了python實(shí)現(xiàn)Decorator模式實(shí)例代碼,簡(jiǎn)單介紹了裝飾器的含義和語法,分享了相關(guān)實(shí)例,小編覺得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-02-02如何利用Python開發(fā)一個(gè)簡(jiǎn)單的猜數(shù)字游戲
這篇文章主要給大家介紹了關(guān)于如何利用Python開發(fā)一個(gè)簡(jiǎn)單的猜數(shù)字游戲的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09Python Matplotlib簡(jiǎn)易教程(小白教程)
這篇文章主要介紹了Python Matplotlib簡(jiǎn)易教程(小白教程),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07Python編程實(shí)現(xiàn)刪除VC臨時(shí)文件及Debug目錄的方法
這篇文章主要介紹了Python編程實(shí)現(xiàn)刪除VC臨時(shí)文件及Debug目錄的方法,涉及Python針對(duì)文件與目錄的遍歷、刪除等相關(guān)操作技巧,需要的朋友可以參考下2017-03-03Python list和str互轉(zhuǎn)的實(shí)現(xiàn)示例
這篇文章主要介紹了Python list和str互轉(zhuǎn)的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11在tensorflow實(shí)現(xiàn)直接讀取網(wǎng)絡(luò)的參數(shù)(weight and bias)的值
這篇文章主要介紹了在tensorflow實(shí)現(xiàn)直接讀取網(wǎng)絡(luò)的參數(shù)(weight and bias)的值,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-06-06python實(shí)現(xiàn)不同文件夾下的函數(shù)相互調(diào)用
這篇文章主要介紹了python實(shí)現(xiàn)不同文件夾下的函數(shù)相互調(diào)用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08