word count
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/nue/SE202010 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/nue/SE202010/homework/11481 |
这个作业的目标 | 通过作业提高写代码能力,了解到编写一个小程序所需完成的各个阶段 |
学号 | 2021918 |
1、码云地址https://gitee.com/shenyunyi/shenyunyi
2、PSP表格
PSP2.1 |
Personal Software Process Stages |
预估耗时(分钟) |
实际耗时(分钟) |
Planning |
计划 |
30 |
20 |
· Estimate |
· 估计这个任务需要多少时间 |
20 |
30 |
Development |
开发 |
60 |
50 |
· Analysis |
· 需求分析 (包括学习新技术) |
30 |
20 |
· Design Spec |
· 生成设计文档 |
0 |
0 |
· Design Review |
· 设计复审 |
0 |
0 |
· Coding Standard |
· 代码规范 (为目前的开发制定合适的规范) |
30 |
25 |
· Design |
· 具体设计 |
30 |
40 |
· Coding |
· 具体编码 |
120 |
200 |
· Code Review |
· 代码复审 |
40 |
45 |
· Test |
· 测试(自我测试,修改代码,提交修改) |
30 |
40 |
Reporting |
报告 |
20 |
30 |
· Test Repor |
· 测试报告 |
10 |
15 |
· Size Measurement |
· 计算工作量 |
10 |
10 |
· Postmortem & Process Improvement Plan |
· 事后总结, 并提出过程改进计划 |
30 |
40 |
|
合计 |
460 |
565 |
发现真实值较估值要更大,说明实际所需时间更多。
3、学习日志
学习时段 | 11.11 | 11.15 | 11.16 | 11.17 |
学习内容 | 多分支结构 | 嵌套if的使用 | 条件表达式 | pass语句 |
收获体会 | 学习基础结构进一步提升python基本功 | 了解了如何使用if嵌套及结构 | 深入学习了条件表达式的语法结构和运算规则 | 了解了可以和pass语句一起使用的其他语句,对python有了进一步认识 |
自我效率评价 | 高 | 高 | 高 | 高 |
4、解题思路
输入所要统计的文本名(不带后缀),将字符置换,大小写统一改为小写,进行前处理,建立用于词频计算的空字典,用遍历列表进行计数,get函数,如果存在就+1不存在就设为1,随后转为字典,排序,最后输出统计的字母数、单词数、行数。
5、运行结果
显示频率出现次数前10位的单词。
6、性能分析
7、关键代码
程序运行时间为2860ms,其中built-in method builtins.input时间占用较多为2853ms,整体性能较好。
置换特殊字符,将大写统一改为小写方便计算。
通过输入文件名进行词频统计,这里可以设置循环次数,加入设置循环2次则第一次文档词频统计后可以直接输入下一个文档连续统计。
8、心得体会
通过本次作业初步了解了编写一个小程序的流程;
通过PSP表格更详细地明白了该如何去制定计划;
编写程序时很多语法用法比较生疏,通过查找语法使用方法和学习基础知识基本可以解决;
对建立字典有了新的认识。在调试程序的过程中,通过报错来查找自身不足,在改错中一点点进步。