项目简介
这是一个用 Python 编写的命令行文本计数统计程序。
- 基础功能:能正确统计导入的 纯英文txt文本 中的 字符数,单词数,句子数。
- 扩展功能:能正确统计导入的 Python 文件中的代码行数,注释行数,空白行数。
使用说明
基础功能命令接口
python wc.py -c [文件名] # 统计字符数量包含空格
python wc.py -w [文件名] # 统计单词数量
python wc.py -s [文件名] # 统计句子数量
扩展功能命令接口
python wc.py -code [文件名] # 统计python文件代码行数
python wc.py -note [文件名] # 统计python文件注释行数
python wc.py -em [文件名] # 统计python文件空白行数
文件目录说明
│ README.md
│
│ README.assets
│
├───Performance_test # 性能分析可视化
│ ├───v0.2性能分析可视化
│ │ Call Graph(调用关系图).png
│ │ Statistcs(性能统计).png
│ │ v0.2wc.py.pstat
│ │
│ └───v0.3性能分析可视化
│ Call Graph(调用关系图).png
│ Statistcs(性能统计).png
│ v0.3wc.py.pstat
│
├───V0.1 # 空项目
│ │
│ └─── main.py
│
├───V0.2 # 项目完成基础功能
│ │ test1.txt # 测试文件
│ │ wc.py # 主程序
│ │
│ └───测试结果截图
│ 基础功能_统计单词.png
│ 基础功能_统计句子.png
│ 基础功能_统计字符.png
│ 程序异常捕获.png
│
├───V0.3 # 项目完成扩展功能
│ │ Lab_1.py # 测试文件
│ │ wc.py # 主程序
│ │
│ └───测试结果截图
│ 拓展功能测试_代码行数.png
│ 拓展功能测试_注释行数.png
│ 拓展功能测试_空白行数.png
│ 程序异常捕获.png
│
└───单元测试 # 单元测试v0.2基本功能测试.mdv0.3拓展功能测试.md
历程运行结果
基础功能
- Input:
python wc.py -c test1.txt # 统计字符数量包含空格
python wc.py -w test1.txt # 统计单词数量
python wc.py -s test1.txt # 统计句子数量
- Output:
文件中的字符个数为:334
文件中的单词个数为:58
文件中的句子个数为:3
- 测试文档截图
- 运行结果截图
- 异常捕获
扩展功能
- Input:
python wc.py -code Lab_1.py # 统计python文件代码行数
python wc.py -note Lab_1.py # 统计python文件注释行数
python wc.py -em Lab_1.py # 统计python文件空白行数
- Output:
Python文件中的代码行数为:30
Python文件中的注释行数为:17
Python文件中的空白行数为:10
- 测试文件过大 见v0.3\Lab_1.py
- 运行结果截图
- 异常捕获
性能分析
PyCharm提供了性能分析Profile,如下图所示。利用Profile工具可以对代码进行性能分析,找出瓶颈所在。
点击 Run -> Profile 开始测试,代码运行结束后会生成一栏测试结果,测试结果由两部分构成,Statistics(性能统计)和Call Graph(调用关系图)
对v0.2代码进行性能分析 (具体结果见Performance_test文件)
- Statistics(性能统计)部分截图
- Call Graph(调用关系图)部分截图
对v0.3代码进行性能分析 (具体结果见Performance_test文件)
- Statistics(性能统计)部分截图
- Call Graph(调用关系图)部分截图
完整代码下载地址:基于Python实现的一个命令行文本计数统计程序