976609536a

第一次编程作业

第一次个人编程作业

这个作业属于哪个课程 2023-双学位(广东工业大学-计算机学院)
这个作业的要求 第一次个人编程作业
目标 实现论文查重
参考文献 CSDN、GitHub、博客园

1、代码仓库地址

仓库地址

2、作业情况

编程语言:python
编译环境:IDLE
第三方库:jieba

3、代码

import jieba

def fenci(text):
    # 导入jieba库对文本进行分词
    words = list(jieba.cut(text))
    text = ' '.join(words)

    return text

def similarity(orig_text, similar_text):
    # 把原始文本和抄袭文本进行分词处理
    orig_text = fenci(orig_text)
    similar_text = fenci(similar_text)
    # 把文本转换为词汇列表
    orig_words = orig_text.split()
    similar_words = similar_text.split()
    # 计算相同的词语数
    common_words = set(orig_words) & set(similar_words)
    similarity = len(common_words) / len(set(orig_words))

    return similarity


if __name__ == '__main__':
    orig_file = input("请输入原始文件地址(如果在对应路径下则输入文件名):")
    similar_file = input("请输入需要查重的文件路径(如果在对应路径下则输入全称):")
    # 读取文件
    with open(orig_file, 'r', encoding='utf-8') as f:
        orig_text = f.read()
        f.close()
    with open(similar_file, 'r', encoding='utf-8') as f:
        similar_text = f.read()
        f.close()
    similarity = similarity(orig_text, similar_text)

    print(f'{similar_file}的重复率为:{similarity:.2%}')
    

4、输出结果

img
img

5、PSP表格

PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
planning 计划 150 160
Estimate 估计这个任务需要多少时间 600 950
Development 开发 500 1000
Analysis 需求分析(包含学习新技术) 200 360
Design Spec 生成设计文档 10 20
Desgin Review 设计审核 20 20
Coding Standard 代码规范 30 20
Desgin 具体设计 60 100
Coding 具体编码 500 750
Code Review 代码审核 60 150
Test 测试 30 60
Reporting 报告 90 120
Test Report 测试报告 10 10
Size Measurement 计算工作量 20 30
Postmortem & Process Improvement Plan 事后总结,并提出过程改进nn计划 30 30
合计 1680 2800

posted on 2023-03-14 21:25  wudi汪汪队  阅读(38)  评论(0编辑  收藏  举报

导航