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.学习心得

    这个作业有点难,害得我中秋都不能开开心心打游戏,勉强把作业做完了。
  • 相关阅读:
    现代软件工程 第一章 概论 第3题——韩婧
    现代软件工程 第一章 概论 第2题——韩婧
    小组成员邓琨、白文俊、张星星、韩婧
    UVa 10892 LCM的个数 (GCD和LCM 质因数分解)
    UVa 10780 幂和阶乘 求n!中某个因子的个数
    UVa 11859 除法游戏(Nim游戏,质因子)
    Codeforces 703C Chris and Road 二分、思考
    Codeforces 703D Mishka and Interesting sum 树状数组
    hdu 5795 A Simple Nim SG函数(多校)
    hdu 5793 A Boring Question 推公式(多校)
  • 原文地址:https://www.cnblogs.com/menmamizigeda/p/11521436.html
Copyright © 2011-2022 走看看