zoukankan      html  css  js  c++  java
  • 第一次个人编程作业

    我的Github地址:https://github.com/ruinzly/031702506

    ||||||||||||||
    |:--|:--|:--|:--|
    |** PSP2.1| Personal Software Process Stages |预估耗时(分钟)|实际耗时(分钟)**|
    | Planning |计划|30|35|
    | Estimate |估计这个任务需要多少时间|5|5|
    | Development |开发|0|0|
    |Analysis |需求分析 (包括学习新技术)|60|40|
    | Design Spec |生成设计文档|5|5|
    | Design Review |设计复审|5|5|
    | Coding Standard |代码规范 (为目前的开发制定合适的规范)|0|0|
    | Design |具体设计|400|480|
    | Coding |具体编码|0|0|
    | Code Review |代码复审|0|0|
    | Test |测试(自我测试,修改代码,提交修改)|0|0|
    | Reporting |报告|0|0|
    | Test Repor |测试报告|0|0|
    | Size Measurement |计算工作量|10|5|
    | Postmortem & Process Improvement Plan |事后总结, 并提出过程改进计划|60|30|
    | |合计|575|605|

    心路历程

    刚开始拿到这个题目的时候,我感觉这次估计要凉了!因为做的题目有限,所以从来没碰过这种题目,题目那么长真的吓到我了!后面觉得还是要做的,就静下心思考这个问题,分析之后感觉用python可能会比较好做一点。后面就开始疯狂补习相关知识,装pycharm等等等等(其实是因为java不会,c++感觉打这个实在是太难了555)。之前本来安装的是sublime text 3,好不容易按下来又要安装很多插件,估计是下了一个假的软件,哪哪插件都安不成功,最后面就选pycharm了。听别的同学说正则表达式好强大,于是就又百度这个到底是啥(过程实在太艰辛!)。反正就至始至终抱着一个可以学到知识的心态来做这个题目,分数啥的都不考虑了(这个简直就是奢望)。后面幸好还打出来了那么些,真是太欣慰了!

    python解题思路

    首先引入了两个模块分别是re模块和json模块,其中调用的函数有re.sub函数、re.findall函数、split函数、group函数、append函数等等。

    (1)创建省、市、县区的列表

    (2)首先利用分片sub函数以“,”进行一次切割分成两个字符串

    (3)创建字典,将第一个字符串导入字典中去。

    (4)利用正则法则与第二个字符串进行相应匹配,匹配完后就删除相应的字符

    (5)最后以json文件输出

    查找资料

    (1)python3菜鸟教程

    (2)python正则表达式的使用

    实现过程

    代码首先用分片函数以“,”分割为姓名+其他的两个字符串,再通过字符串与列表进行比对查询分别分割出省、市、县区等等其他的七级,全篇的精髓在于打表的规律以及正则表达式。

    代码独到之处

    打表顺序

    正则表达式

    单元测试

    2!李四,福建省福州13756899511市鼓楼区鼓西街道湖滨路110号湖滨大厦一层.

    '地址': ['福建省', '福州市', '鼓楼区', '鼓西街道', '湖滨路', '110号', '湖滨大厦一层']

    1!小王,福建省福州13756899511市鼓楼区鼓西街道湖滨路110号湖滨大厦一层.

    '姓名':'小王'

    2!王五,福建省福州市鼓楼18960221533区五一北路123号福州鼓楼医院.

    '姓名':'王五'

    1!小陈,广东省东莞市凤岗13965231525镇凤平路13号.

    '手机': '13965231525'

    性能测试


    比较遗憾的是,这次的代码没能完成3!难度,时间来不及,就没能改善性能了555

    异常处理

    定义二级列表时,少了个参数无法匹配。

    收获

    这一次完成这一项作业成就感好大啊!第一次用python打作业,真真切切感受到了python的强大(真的好简便)。过程虽然一路磕磕绊绊的,但是还是蛮有收获的。总的来说,这次代码虽然没能完成3!难度,但是也学到了python的基本用法和正则法则的一点皮毛。今后会好好更深入学习这门语言,让自己变得更专业一点!

  • 相关阅读:
    MongoDB 组合多个条件查询($and、$in、$gte、$lte)
    KafkaConsumer 长时间地在poll(long )方法中阻塞
    Spring MVC整合Mybatis 入门
    JAVA正确地自定义比较对象---如何重写equals方法和hashCode方法
    MyBatis简单使用和入门理解
    使用二分查找判断某个数在某个区间中--如何判断某个IP地址所属的地区
    FastJson使用示例
    linux(ubuntu) 开发环境配置
    android自定义风格的toast
    iPhone跳转的动画效果类型及实现方法 CATransition
  • 原文地址:https://www.cnblogs.com/ruinzly/p/11600209.html
Copyright © 2011-2022 走看看