第一次个人编程作业

一、GITHUB

https://github.com/llhhlh/031802216/tree/master

二、计算模块接口的设计与实现过程

读入与写入



python的文件处理十分简单,只需要注意不同读入以及不同写入的模式选择和编码方式utf-8,否则读取不了

查重对比


考虑到读行模式,readlines会将文本按行读取,读取后的不同行py会自动加以\n分开,如测试结果


所以我设 lines1 和 lines2 分别为两个输入文件中的所有文本行。先对文件1中的所有行进行遍历,如果文件2中包括文件1的行line,count加1,结果为相同的行的个数与两个文件最大行的比值,当2个文件长度相同,且每一行都相同时,取最大值,这是比较简便的求法。

命令行参数


python使用的命令行参数是argv函数,按照python main.py [参数1] [参数2] [参数3]的格式,可以接受命令行参数,不过有一点需要注意的是诸如pycharm等IDE无法编译通过该部分,会产生下列错误

因为编译器里没有需要填充的列表,所以必须要在终端命令行测试,找到文件后使用上述方法即可测试

三、计算模块接口部分的性能改进



因为当时pycharm不是专业版,没有profile,所以简单使用了python内置的time函数计算了代码执行的时间,无碍。

四、计算模块部分单元测试展示


这个是临时输入测试的结果,上面两行分别是需要比较的文件1和2,第三行则是答案写入的文件,第四行为测试结果

这是使用命令行参数的结果

输出为答案文件

五、总结及PSP

之前py有学,但是模糊于基础知识,画个大框,里面填了什么大概不知,实际运用后发现知识的琐碎与无穷尽,大框填不完,且大框套小框,做起来还是问搜查,搜一个问题的解决方法,另一个问题接踵而至。

PSP Personal Software Process Stages 预估时间/分 实际时间/分
Planning 计划 10 10
Estimate 预计时间 60 40
Analysis 需求分析 30 60
Design Spec 生成文档 130 160
Design Review 复视 10 20
Coding Standard 标准 10 10
Design 设计 160 200
Coding 编码 160 200
Code Review 检查 10 10
Test 测试 30 60
Reporting 报告 60 60
Test Report 测试报告 --- ---
Size Measurement 工作量 --- ---
Postmortem & Process Improvement Plan 总结 --- ---
--- 合计 670 830
posted @ 2020-09-16 16:21  kezai  阅读(196)  评论(0)    收藏  举报