20252302 实验二《Python程序设计》实验报告

学号 2025-2026-2 《Python程序设计》实验2报告

课程:《Python程序设计》
班级: 2523
姓名: 邢城瑜
学号:20252302
实验教师:王志强
实验日期:2026年4月19日
必修/选修: 公选课

1.实验内容

(1)编写计算器程序
设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。
考核基本语法、判定语句、循环语句、逻辑运算等知识点。
(2)用LLM生成一个计算器程序
介绍相关功能,并分析生成的程序代码含义。
对比分析自写程序与生成程序的区别(好与坏)。

2. 实验过程及结果

(1)自主编写
在课上老师代码实现加减乘除模商等基础运算的基础上,新增了对除、模等运算的错误提示。
对数、开方等使用math函数计算,通过eval实现输入数字的灵活性,使用格式化输出。
同时,使用循环实现同一进程多次计算。
image
运行过程
image

(2)LLM编写
豆包编写的代码
image
聪明的豆包编写的代码运行ing
image
豆包代码优点分析

  1. 功能全面
    整合基础四则运算、科学函数、进制转换,还加入计算历史记录,实用性强,满足多种计算需求。
  2. 结构模块化
    各类运算单独封装成独立函数,条理清晰,可读性高,方便修改与增添新功能。
  3. 容错性强
    设置除零报错、负数开方校验、非法输入拦截,完善异常处理,程序运行稳定不易崩溃。
  4. 交互体验好
    菜单式选择操作,提示文字清晰,支持查看历史计算记录,操作简单易懂。
  5. 拓展性优秀
    代码预留拓展空间,可轻松添加对数、图形界面等新功能,后期维护便捷。
  6. 规范严谨
    导入库合理,函数注释齐全,代码书写工整,符合Python基础编程规范。
    (3)代码对比与改进建议
    1.我的代码封装不够好,在部分步骤缺少对非数字输入的处理,在不分步骤缺少参数校验。
    2.代码较为冗余,在函数中可以省略result中间量,直接return即可
    3.(豆包提出此条)eval会影响输入的安全性,被恶意代码注入有可能会造成较大影响。

3. 实验过程中遇到的问题和解决过程

  • 问题1:自定义pow函数与python内置函数重名,导致报错
  • 问题1解决方案:修改函数名为power,避免重复
  • 问题2:除零操作导致崩溃
  • 问题2解决方案:设置校验与提示,避免进程直接因错误结束

4.上传到gitee

将人工写的和LLM豆包写的上传到gitee

我的gitee仓库
提交过程
image
仓库截图
image

其他(感悟、思考等)

1.代码封装是一件很考虑细心度的事情,必须要做的滴水不漏。
2.代码的拓展性(例如逻辑、不冗余)做得好的话,拓展起来就会很方便;反之(shit山代码)就很恼人。
3.AI可以分析你的代码提出优化建议与风险点,很有用,但有的时候不够准确,参考即可。

参考资料

posted @ 2026-04-19 20:05  Jade2000  阅读(17)  评论(0)    收藏  举报