Python 统计文本中单词的个数
生活随笔
收集整理的這篇文章主要介紹了
Python 统计文本中单词的个数
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1.讀文件,通過正則匹配
1 def statisticWord(): 2 line_number = 0 3 words_dict = {} 4 with open (r'D:\test\test.txt',encoding='utf-8') as a_file: 5 for line in a_file: 6 words = re.findall(r'&#\d+;|&#\d+;|&\w+;',line) 7 for word in words: 8 words_dict[word] = words_dict.get(word,0) + 1 #get the value of word, default is 0 9 sort_words_dict = OrderedDict(sorted(words_dict.items(),key = lambda x : x[1], reverse = True)) 10 # sort_words_dict = sorted(words_dict, key = operator.itemgetter(1)) 11 with open(r'D:\test\output.txt',encoding = 'utf-8', mode='w') as b_file: 12 for k,v in sort_words_dict.items(): 13 b_file.write("%-15s:%15s" % (k,v)) 14 b_file.write('\n')2. 通過命令行參數(shù)
def statisticWord2():if len(sys.argv) == 1 or sys.argv[1] in {"-h", "--help"}:print("usage: filename_1 filename_2 ... filename_n")sys.exit()else:words = {}strip = string.whitespace + string.punctuation + string.digits + "\"'"for filename in sys.argv[1:]:for line in open(filename):for word in line.split():word = word.strip(strip) # remove all the combination of strip in prefix or suffixif len(word) >= 2:words[word] = words.get(word, 0) + 1for word in sorted(words):print("'{0}' occurs {1} times".format(word,words[word]))?
轉(zhuǎn)載于:https://www.cnblogs.com/zyf7630/p/3209976.html
《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的Python 统计文本中单词的个数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: “4K云字库”基本框架图
- 下一篇: java NIO概述