软件工程第1次作业
软件工程第一次作业
要求0:
作业要求地址:https://edu.cnblogs.com/campus/nenu/2016CS/homework/2110
要求1:
git仓库地址: https://git.coding.net/baiys581163com/wf.git
要求2:
PSP阶段表格
PSP阶段 | 计划所需时间% | 实际所需时间% |
---|---|---|
计划 | 30 | 20 |
*明确需求和其他相关因素,估计每段时间成本 | 10 | 5 |
开发 | 50 | 64 |
*需求分析 | 5 | 5 |
*生成设计文档 | 5 | 5 |
*设计复审 | 5 | 2 |
*代码规范 | 4 | 2 |
*具体要求 | ||
功能1 | 2 | 2 |
功能2 | 2 | 2 |
功能3 | 2 | 2 |
*具体编码 | ||
功能1 | 5 | 15 |
功能2 | 5 | 15 |
功能3 | 5 | 10 |
*代码审查 | 5 | 2 |
*测试(自测,修改代码,提交修改) | 5 | 2 |
报告 | 20 | 12 |
*测试报告 | 10 | 5 |
*事后总结 | 10 | 7 |
分析原因:这次项目时间和预计相差太多的主要原因是,
- 1.对python编程不够熟练,实现目标编程时间长。
- 2.缺少整体分析的思想。
要求3:##
思路###
- 1.从实现基本功能入手,觉得清理文本中的特殊符号比较困难。
- 2.感觉3个功能没什么差别,写个父类,具体处理写子类分析。
- 3.最后解决读取路径下的文件
代码展示###
- 1.使用空格分隔单词,结果把每个字符分隔开了,debug了几次,发现.readlines()和.readline()区别.readline()一次读取一行,.readlines()一次读取整个文件,保存在一个list中,每行作为一个元素。本来以为没什么差别,结果得到的结果差距挺大。
def readTxt(path):
filename = open(path,'r', encoding="utf-8")
rline = filename.readlines()
# rline = filename.read()
# print(collections.Counter(rline))
words = []
for line in rline:
#print(line)
line = re.sub("[\s+\.\!\/\?_,$%^*&(+\"\')]+|[+——()?【】“”!,。?、~@#¥%……&*()]]+'", " ", line.lower())
# line = re.sub("[\u0060|\u0021-\u002c|\u002e-\u002f|\u003a-\u003f|\u2200-\u22ff|\uFB00-\uFFFD|\u2E80-\u33FF]", '', line)
line = line.strip()
#print(line)
word = line.split(' ')
words.extend(word)
#print(words)
# print(collections.Counter(words))
filename.close()
return words
- 2.清理数据,虽然对正则表达式不是很会写,但还好网上找到了个大差不差的,稍作修改也就能用了。
line = re.sub("[\s+\.\!\/\?_,$%^*&(+\"\')]+|[+——()?【】“”!,。?、~@#¥%……&*()]]+'", " ", line.lower())
- 3.发现字符串和别的语言不同的地方,可以从尾部开始查询,以及字符串截取
files = os.listdir(pathn[6:-5])
posted on 2018-09-21 12:07 baymax2016011926 阅读(225) 评论(1) 编辑 收藏 举报