zoukankan      html  css  js  c++  java
  • (软工实践)第一次个人编程作业

    1.github地址

    [github地址](https://github.com/b666666666666666b)
    

    2.psp表格

    ![](https://img2018.cnblogs.com/blog/1330851/201909/1330851-20190917162303164-1419802546.png)
    

    3.解题思路描述

    即刚开始拿到题目后,我就想着用正则匹配数字、‘省’、‘市’等关键字,然后把他们丢到json里面,然后我就去复习了一下正则表达式的用法,还有怎么搞一个json文件出来。学完之后就开始用敲代码。敲完之后发现有可能出现省,市等关键词缺失的情况。然后我就去把省市信息的文件直接放在代码里,让程序去匹配名字。
    

    4.设计实现过程

    有一个类,类里面有九个函数,分别是:get_type,get_num,get_name,get_two_levels,get_xian,get_xiang,last_two_level,last_level,get_dic
    流程图如下
    

    5.计算模块接口部分的性能改进

    说实话我没怎么去关注性能的改进,我觉得这次作业的主要矛盾是正确率,快不快已经不重要了,而且我也不具备性能改进的能力,能把正确率上去我就很满足了。性能分析图如下,我循环了十万次。
    



    消耗最大的就是匹配省级和市级的函数get_two_levels

    6.计算模块部分单元测试展示

    单元测试使用python的unittest模块,具体代码如下

    import unittest
    from a import p_info
    class TestDict(unittest.TestCase):
        def test_num(self):
            p = p_info()
            p.num = 123
            self.assertEqual(p.num, 123)
        def test_name(self):
            p = p_info()
            p.name = '123'
            self.assertEqual(p.name, '123')
        def test_run_all(self):
    	file1 = open('test5.txt', 'r')
            file2 = open('output5.txt', 'r')
            for i, j in file1.readlines(), file2.readlines():
                p = p_info()
                p.run_all()
                self.assertEqual(file2,p.res )
    if __name__ == "__main__":
        unittest.main()
    

    7.计算模块部分异常处理说明

    参考别人的博客写几个异常处理
    

    (1)只有电话,没有地址
    try:
    twowords=string2[0:2]
    except AttributeError:
    print('没有输入地址')
    输入1!雍厂赏,15578766416.时就不会发生错误

    8.学习心得

    这个作业有点难,害得我中秋都不能开开心心打游戏,勉强把作业做完了。
  • 相关阅读:
    如何优化多个关键字
    如何优化中小型企业网站
    SEO内容为王之如何创造伪原创
    中央电化教育馆教学资源库介绍
    教育网络游戏《学乐吧》介绍
    教育技术学专业主干课程系列教材(共八本)
    百度,google对网站首页内页权重分配的区别
    网站内链对网站排名有那些作用和影响?
    网站好排名,页面内链少不了
    公务员考试与事业单位考试
  • 原文地址:https://www.cnblogs.com/menmamizigeda/p/11521436.html
Copyright © 2011-2022 走看看