第一次个人编程作业

psp2.1

PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 10 40
· Estimate 估计这个任务需要多少时间 10 40
Development 开发 30 40
· Analysis 需求分析 (包括学习新技术) 10 60
· Design Spec 生成设计文档 20 45
· Design Review 设计复审 30 30
· Coding Standard 代码规范 (为目前的开发制定合适的规范) 10 10
· Design 具体设计 30 30
· Coding 具体编码 10 20
· Code Review 代码复审 30 40
· Test 测试(自我测试,修改代码,提交修改) 60 10
Reporting 报告 80 20
· Test Report 测试报告 30 10
· Size Measurement 计算工作量 20 40
· Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 30 100
Total 合计 360 480

`

try:
    # 读取原文文件内容
    with open(original_file_path, 'r', encoding='utf-8') as original_file:
        original_text = original_file.read()

    # 读取抄袭版论文文件内容
    with open(plagiarized_file_path, 'r', encoding='utf-8') as plagiarized_file:
        plagiarized_text = plagiarized_file.read()

    # 计算重复率
    similarity = calculate_similarity(original_text, plagiarized_text)

    # 将结果写入答案文件,精确到小数点后两位
    with open(output_file_path, 'w', encoding='utf-8') as output_file:
        output_file.write("{:.2f}".format(similarity))

    print(f"重复率计算完成,结果已保存到 {output_file_path}")

except FileNotFoundError:
    print("文件未找到,请检查文件路径是否正确。")
except Exception as e:
    print(f"发生错误: {e}")

`
代码说明

calculate_similarity 函数:使用 difflib.SequenceMatcher 类计算两个文本的相似度,返回一个 0 到 1 之间的浮点数,表示重复率。
main 函数:
从命令行参数获取原文文件、抄袭版论文文件和输出答案文件的路径。
读取原文文件和抄袭版论文文件的内容。
调用 calculate_similarity 函数计算重复率。
将重复率结果保存到输出答案文件中,精确到小数点后两位。

注意事项

请确保输入的文件路径是正确的,并且文件编码为 UTF-8。
如果文件未找到或发生,程序会输出相应的错误信息

使用方法

测试案例:

将上述代码保存为一个 Python 文件,例如 plagiarism_checker.py。
打开命令行终端,运行以下命令:
python plagiarism_checker.py <原文文件的绝对路径> <抄袭版论文文件的绝对路径> <输出答案文件的绝对路径>
例如
python plagiarism_checker.py /path/to/orig.txt /path/to/orig_add.txt /path/to/answer.txt

  1. 测试环境准备
    通过在命令行输入 python --version 来确认。
    将前面给出的 Python 代码保存为 main.py 文件。
  2. 创建测试文件
    在磁盘上创建一个用于测试的文件夹,例如 C:\tests。
    在该文件夹下创建三个文件:
    原文文件 org.txt:在文件中输入原文内容,比如:
    plaintext
    今天是星期天,天气晴,今天晚上我要去看电影。
    抄袭版论文文件 org_add.txt:输入经过增删改后的内容,例如:
    plaintext
    今天是周天,天气晴朗,我晚上要去看电影。
    答案文件 ans.txt:该文件初始为空,用于存储程序输出的重复率结果。
  3. 运行测试
    打开命令提示符(CMD),输入以下命令来运行代码:
    sh
    python main.py C:\tests\org.txt C:\tests\org_add.txt C:\tests\ans.txt

若一切正常,命令行将输出类似如下信息:
plaintext
重复率计算完成,结果已保存到 C:\tests\ans.txt

  1. 验证结果
    使用文本编辑器打开 C:\tests\ans.txt 文件,查看其中的重复率结果,结果应为精确到小数点后两位的浮点数。
posted @ 2025-03-08 19:24  masssi  阅读(15)  评论(0)    收藏  举报