第一次个人编程作业
github
PSP
PSP2.1 | Personal Software Process Stages |
预估耗时(min) | 实际耗时(min) |
---|---|---|---|
Planning | 计划 | 40 | 40 |
Estimate | 估计这个任务需要多少时间 | 40 | 40 |
Development | 开发 | 665 | 720 |
Analysis | 需求分析 (包括学习新技术) | 180 | 200 |
Design Spec | 生成设计文档 | 15 | 20 |
Design Review | 设计复审 | 20 | 20 |
Coding Standard | 代码规范 (为开发制定合适的规范) | 50 | 40 |
Design | 具体设计 | 120 | 150 |
Coding | 具体编码 | 40 | 40 |
Code Review | 代码复审 | 60 | 50 |
Test | 测试 (自我测试,修改,提交修改) | 180 | 200 |
Reporting | 报告 | 80 | 100 |
Test Report | 测试报告 | 30 | 40 |
Size Measurement | 计算工作量 | 20 | 30 |
Postmortem & Process Improvement Plan | 事后总结 并提出过程改进计划 | 30 | 30 |
合计 | 900 | 988 |
结题思路
1.根据题目要求得知需要把数据之间分割成,姓名、手机号、一级地址、二级地址、三级地址、四级地址、五级地址、六级地址、七级地址。
2.为了实现分割地址目的用到正则表达式。
3.将得到的数据依次存入dict数据中,用json输出。
设计实现过程
1.变量定义
dict[]用来存放之后要输入的姓名、手机号、地址。 list[]用来存放分成七级的地址。2.使用函数
re.search(, ).group() 获取需要的数据。 .replace(, ) 删去已获取的数据。3.实现流程
![](https://images.cnblogs.com/cnblogs_com/LaSelah/1548846/o_%7BJUNGOW]0BFQVMAKHKMZGTH.png)
性能分析与改进
![](https://images.cnblogs.com/cnblogs_com/LaSelah/1548846/o_3.png)
单元测试
![](https://images.cnblogs.com/cnblogs_com/LaSelah/1548846/o_O_PCE5RC%60QK_(@LM)Z9G((S.png)
![](https://images.cnblogs.com/cnblogs_com/LaSelah/1548846/o_4.png)
异常处理
不是很懂总结
单纯的带有关键词列如“省”、“市”、“县”等关键词的地址分配其实非常简单,但是遇到类似于张三,福建福州闽13599622362侯县上街镇福州大学10#111.
无关键词的就非常难以只依靠本地来进行判断。
说实话后面的性能分析、单元测试和异常处理真的不是很懂怎么做。