学号 2017*****7142
姓名:张孝兴
仓库地址:
https://gitee.com/nezha66/word_frequency/branches

  1. 程序分析,对程序中的四个函数做简要说明。要求附上每一段代码及对应的说明。

1.打开读取文档到缓冲区。
def process_file(dst):
try:
p = open(dst,'r')
except IOError as s:
print (s)
return None
try:
bvffer = p.read()
except:
print ("Read File Error!")
return None
p.close()

return bvffer

2.去掉大小写符号,空格,for循环进行统计增值,word_freq返回。
def process_buffer(bvffer):
if bvffer:
word_freq = {}

    bvffer = bvffer.lower()
    for fh in ',.!?+-_':
    
       bvffer = bvffer.replace(fh, " ")
    
    words = bvffer.strip().split()
   
    for word in words:
        word_freq[word] = word_freq.get(word, 0) + 1

    return word_freq

3.输出top10的单词。
def output_result(word_freq):
if word_freq:
sorted_word_freq = sorted(word_freq.items(), key=lambda v: v[1], reverse=True)
for item in sorted_word_freq[:10]: # 输出 Top 10 的单词
print(item)
1.
if name == "main":
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('dst')
args = parser.parse_args()
dst = args.dst
bvffer = process_file(dst)
word_freq = process_buffer(bvffer)
output_result(word_freq)

总结
这次做的属实不好

posted on 2019-04-03 14:15  张孝兴  阅读(142)  评论(2编辑  收藏  举报