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

20244214 2024-2025-2 《Python程序设计》实验二报告

课程:《Python程序设计》
班级: 2442
姓名: 张家乐
学号:20244214
实验教师:王志强
实验日期:2025年4月1日
必修/选修: 公选课

1.实验内容

(1)设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。

(2)对基本语法、判定语句、循环语句、逻辑运算等知识点进行考核。

2. 实验过程及结果

(1)打开Pycharm应用,观察应用界面与功能,熟悉工作环境,创建工程项目。

图1

(2)在Python中先定义一个函数“calculate(a,b,operator0)”,用于预备对数字的输入与运算。其中,“a”为第一个参与运算的数,“b”为第二个参与运算的数,“operator0”为运算符号。

图2

(3)使用“if循环”,对不同的运算情况进行多分支的运算选择,使得该计算器能够根据使用者的需要对输入的数字返回到简单的加、减、乘、除、模、整除、乘方等运算后的结果。

图3

(4)加入参数a、b,令a、b等于使用者输入的要求运算的数转化而成的整数,operator0为使用者输入的运算符。输出的内容为表示运算过程的字符与运算结果。

图4

(5)为了使该计算器可以连续使用,在“输入”的代码前加上一个“while循环”,在每一次运算结束后,提示使用者是否继续计算,如果使用者输入“是”,则计算器继续运行;如果使用者输入“否”,则程序结束。

图5

(6)为了达到功能多多益善的目的,在计算器的运算功能中加入阶乘运算与对数运算的功能。先在最开头使用“import math”导入math库,之后即可使用math库中的阶乘与对数运算函数,大大拓展了计算器的功能。

图6

(7)考虑到复数运算也是我们日常生活中常见的运算,在计算器程序设计中再加入复数的运算。使用“if循环”让使用者在运算前可以选择计算复数还是实数,若选择复数,使用者输入的值将会被“complex”转化为复数,之后就可以运算了。

图7

(8)为了使我们的计算器更加美观好看,并且让使用者知道该计算器的开发者信息,我们在开始之前先输出五角星装饰与程序相关信息,到此为止,一个较为完整的计算器就基本设计完成了。

图8

(9)完成程序的调试和运行,将代码托管到码云。

图9

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

  • 问题1:对复数的输入有些不清楚。

  • 问题1解决方案:询问老师之后,很快得到了答案。

  • 问题2:程序在运行过程中循环出现问题,无法进行运算。

  • 问题2解决方案:经过老师的检查之后,发现缩进有错误,经过修改与重新调试后,成功运行了程序。

  • 问题3:对f-string的用法不了解。

  • 问题3解决方案:在网上查找大量相关资料后,成功掌握了这个基本语法。

其他(感悟、思考等)

(1)有不懂的地方,如果自己实在解决不了,要积极向老师询问,可能很快就会找到问题的症结所在。
(2)积极在网上查阅一些实用、便捷的技巧,可以使我们编写程序更加方便。
(3)要积极去追求新的高度,不能只囿于一些简单的程序之中,要有突破和创新。

参考资料

  • 《零基础学Python》

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/909728.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

langchain0.3教程:聊天机器人进阶之方法调用

大语言模型只能聊天吗?本篇文章将会介绍OpenAI的Function calling原理,以及在Langchain中对应的Tools Calling如何使用,最后将工具调用集成到gradio实现可视化聊天界面。我们思考一个问题:大语言模型是否能帮我们做更多的事情,比如帮我们发送邮件。默认情况下让大模型帮我…

云锵投资 2025 年 3 月简报

季报摘要加密货币高频量化策略,研发中…… 本季度量化基金策略业绩:4.98%,良,全国排名:3975/12416;平均 Beta:1.00; 本季度量化股票策略业绩:5.04%,良,全国排名:3935/12416;平均 Beta:1.46; 本季度量化期权策略业绩:8.69%(中性策略,不参与全国股基排名);(…

【攻防世界】flag_universe

⭕、知识点 流量分析/ftp协议/图片LSB隐写/zsteg 一、题目给出一个流量包二、解题 1、追踪ftp流量 2、查看后发现一些可能有用的信息3、flag.txt里的内容是一串base64编码后的数据,解密后发现是假flag4、根据题目名称以及剩下的两个文件,盲猜答案就隐藏在两张图片中13号流是旧…

20242317 2024-2025-2 《Python程序设计》实验二报告

20242317 2024-2025-2 《Python程序设计》实验二报告 课程:《Python程序设计》 班级:2423 姓名:林楚皓 学号:20242317 实验教师:王志强 实验日期:2025年3月26日 必修/选修:公选课 一、实验内容 1.设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善; …

# **DeepSeek 深度解析 PasteForm:一个让管理端开发爽到飞起的全栈解决方案**

🤖 DeepSeek 深度解析 PasteForm:一个让管理端开发爽到飞起的全栈解决方案 各位开发者注意啦!今天我要带大家全方位解剖 PasteForm 这个神奇框架——不仅介绍核心思想,更要重点展示它强大的配套工具链!(那些被其他教程忽略的精华部分都在这里了!) 先上镇楼图,这是 De…

利用 AWS Signature:REST API 认证的安全指南

随着云计算领域的不断发展,保护 API 访问的安全性变得愈加重要。AWS Signature 提供了一种强大的机制,用于通过 REST API 认证请求到 AWS 服务。本文讨论了 AWS Signature 的重要性,解释了它是什么,提供了 Java 和 Go 中的实现示例,并介绍了用于测试的工具,包括 APIPost,…

【ABP】项目示例(8)——数据迁移

数据迁移 在上一章节中,已经展示了数据播种的用途之一,即单元测试中进行数据初始化,在这一章节中,实现数据播种的另一重要用途,即数据迁移 该项目使用的是代码优先的开发模式,需要将领域模型迁移到数据库中的数据模型 EF数据迁移 在程序包管理控制台选中General.Backend.…

一个测试工程师的实战笔记:我是如何在Postman和Apipost之间做出选择的?

作为一家金融科技公司的测试负责人,我每天要处理数十个需要加密验签的接口。从最开始的Postman,到后来的Apipost,让我重新思考:我们需要的究竟是一个代码编辑器,还是一个真正懂测试者的智能工具? 一、当加密需求被Postman的脚本支配 1、密码字段MD5加密 去年接手支付系统…

【ABP】项目示例(7)——数据播种

数据种子 在上一章节中,已经对仓储层和应用层进行了单元测试,在这一章节中,进行数据播种 大多数程序正常运行都需要依赖于初始数据,依赖于数据库的程序基本都是如此 例如需要有一个初始的管理员用户或者一个管理员角色,用来进行登录系统,像这种主要用于生产环境中的数据播…

kettle从入门到精通 第九十四课 ETL之kettle MySQL Bulk Loader大批量高性能数据写入

1、在使用kettle时如果对表输出性能要求,可以考虑用mysql 批量加载步骤,该步骤可以实现每秒5万+的数据同步(该数据仅是基于我本人的笔记本,若是服务器则效率更高),如下图所示: 2、原理 知其然知其所以然,之所以MySQL Bulk Loader速度如此之快是因为MySQL 批量加载器使用…

Web开发SpringBoot流程性的学习----回顾补充2(YApi)

Vue简述 Vue 是一套前端框架,免除原生JavaScript中的DOM操作,简化书写。 基于MVVM(Model-View-ViewModel)思想,实现数据的双向绑定,将编程的关注点放在数据上。 Vue2官网:https://v2.cn.vuejs.org/生命周期(Vue3已不同)AJAX 概念: Asynchronous JavaScript And XML,异步的…

4.1日报

今天完善了那个多条件查询 虽然没有做成知网那么高级的 但是查询功能已经很完善// 1. 政策标题精确查询(可根据需求改为like模糊查询)if (StringUtils.hasText(policyTitle)) {queryWrapper.like(Policy::getName, policyTitle);}// 2. 政策内容全文检索if (StringUtils.hasT…