一、編譯環境python
JetBrains PyCharm Community Edition 2018 、 Python 3.7函數
二、讀文件到緩衝區(process_file(dst))性能
三、處理緩衝區,返回存有詞頻數據的字典(process_buffer(bvffer))spa
四、輸出詞頻前十的單詞(output_result(word_freq))3d
五、主函數對以前的函數進行整合(main())blog
python代碼編寫時,不須要{ }括號,用:及縮進代替,用來強制規範代碼排序
例:get
try: it
doc=open(dst,'r')io
except IOError as s:
print(s)
return None
一、總運行時間:
二、執行次數最多的部分代碼
可見word_freq[word] = word_freq.get(word, 0) + 1運行次數最多
三、執行時間最多的部分代碼
可視化部分:
根據運行次數排序方式分析命令:
python -m cProfile -o result.out -s call word_freq.py
python gprof2dot.py -f pstats result.out | dot -Tpng -o result.png
根據佔用時間排序方式分析命令:
python -m cProfile -o resultc.out -s cumulative word_freq.py
python gprof2dot.py -f pstats resultc.out | dot -Tpng -o result.png