胡伟业
2017035107065
程序分析说明
1.读文件到缓冲区
def process_file(dst): try: x = open(dst,"r") except IOError as s: print (s) return None try: bvffer = x.read() except: print ("Read File Error!") return None x.close() return bvffer
2.下面添加处理缓冲区 bvffer代码,统计每个单词的频率,存放在字典word_freq
def process_buffer(bvffer): if bvffer: word_freq = {} bvffer = bvffer.lower() for ch in '“‘!;,.?”': bvffer = bvffer.replace(ch, " ") 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]: print(item)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)
性能分析结果及改进情况
执行时间最长
执行次数最多
程序运行命令、结果截图
总结反思
这次的作业,我在同学的帮助下完成了这次的作业,从刚开始的 啥也看不懂,到可以看懂,感觉含有成就感,但我感觉还我还有许多的不足,对python的其他使用还不是很了解,还需要学习。