课时45:if练习_2

简介: 本文围绕Python`if`语句展开两个练习的详细讲解。第一个练习是根据小明的期末成绩给予不同奖励,在实现基本功能后,分析了输入不合法分数的问题,并通过条件检查和`if`语句嵌套解决,同时添加友提示;第二个练习是根据身高、财富、颜值三个条件判断女方是否嫁,实现逻辑判断后提醒不能以此标准找对象。最后强调练习要认真做、多做几遍并写注释,为后续学习循环语句做铺垫。1.练习四:根据期末成绩给予奖励2.练习五:根据条件判断婚嫁情况3.练习总结与后续预告

课时45:if练习_2

 

摘要:本文围绕Python`if`语句展开两个练习的详细讲解。第一个练习是根据小明的期末成绩给予不同奖励,在实现基本功能后,分析了输入不合法分数的问题,并通过条件检查和`if`语句嵌套解决,同时添加友提示;第二个练习是根据身高、财富、颜值三个条件判断女方是否嫁,实现逻辑判断后提醒不能以此标准找对象。最后强调练习要认真做、多做几遍并写注释,为后续学习循环语句做铺垫。

1.练习四:根据期末成绩给予奖励

2.练习五:根据条件判断婚嫁情况

3.练习总结与后续预告

 

01、 练习四:根据期末成绩给予奖励

1.1 基本功能实现

接下来继续完成`if`语句的练习,先看练习四。此练习要求从键盘输入小明的期末成绩,根据成绩给予不同奖励:成绩为100时奖励一辆宝马汽车;成绩在80-99时奖励一台苹果手机;成绩在60-79时奖励一本参考书;其他情况无奖励。


实现代码如下:

#获取小明成绩
score=float(input("请输入你的期末成绩:"))
#判断发给的奖励
if score==100:
print("宝马拿去玩")
elif score>=80:
print("苹果手机拿去玩")
elifscore>=60:
print("参考书拿去玩")
else:
print("棍子一根")
```
为了让输出结果更清晰,可添加分割线:
```python
print("="*40)

运行代码,输入不同成绩可得到相应奖励提示。

image.png

image.png

1.2 处理输入不合法问题

然而,上述代码也有问题没有考虑到。当输入的成绩超出0-100的范围时,程序仍会给出奖励提示,这显然不符合实际情况。为解决该问题,我们需要对用户输入的成绩进行合法性检查。

image.png

image.png

修改后的代码如下:

score=float(input("请输入你的期末成绩(成绩范围是0-100):"))
#检查用户的输入是否合法
if 0<=score<=100:
#判断发给的奖励
if score==100:
print("宝马拿去玩")
elif score>=80:
print("苹果手机拿去玩")
elif score>=60:
print("参考书拿去玩")
else:
print("棍子一根")
else:
#用户输入的不合法,弹出一个友提示
print("你输入的内容不合法,拉出去毙了")

这里利用了`if`语句的嵌套,先检查成绩是否在合法范围内,若合法再进行奖励判断;若不合法,则给出友提示。


02、 练习五:根据条件判断婚嫁情况

2.1 数据获取与判断逻辑

练习五是一个比较现实的问题,女方家长嫁女儿会提出身高、财富、颜值三个条件。身高要求1米8以上,财富要求1000万以上,颜值要求500以上。若三个条件同时满足,我一定要嫁给他;若有一个条件满足,嫁吧,比上不足,比下有余;若三个条件都不满足,则不嫁。


实现代码如下:

获取用户的三个数据,身高、财富、颜值
height=float(input("请输入你的身高(厘米):"))
money=float(input("请输入你的财富(万):"))
face=float(input("请输入你的颜值(平方厘米):"))
print(height,money,face)
判断到底嫁不嫁
如果这三个条件同时满足,则:我一定要嫁给他
if height>180andmoney>1000andface>500:
print("我一定要嫁给他")
如果有一个条件满足,嫁吧,比上不足,比下有余
elif height>180 or money>1000 or face>500:
print("嫁比上不足,比下有余")
若三个条件都不满足,则不嫁
else:
print("不嫁")

通过上述代码,先获取用户输入的三个数据,然后根据条件进行判断并输出结果。

需要注意的是,这个程序只是一个简单的示例,在现实生活中不能以此标准去找对象。例如输入身高3米、财富2000万、颜值1000平方厘米,程序会判断“一定要嫁”;输入身高5米、财富1万、颜值1平方厘米,程序会判断“嫁比上不足,比下有余”;输入身高180厘米、财富1000万、颜值500平方厘米,程序会判断“不嫁”,但这些判断结果在现实中并不合理。大家自己注意一下哈。

至此,`if`语句的几个练习都已讲解完毕。这些练习并不难,是我们第一次用程序实现一些功能。希望大家认真完成练习,多做几遍,在该写注释的地方一定要写注释。接下来,我们将进入下一个话题——循环语句的学习。

相关文章
|
存储 JSON 算法
无懈可击的身份验证:深入了解JWT的工作原理
无懈可击的身份验证:深入了解JWT的工作原理
1494 0
|
1月前
|
存储 关系型数据库 测试技术
玩转n8n测试自动化:核心节点详解与测试实战指南
n8n中节点是自动化测试的核心,涵盖触发器、数据操作、逻辑控制和工具节点。通过组合节点,测试工程师可构建高效、智能的测试流程,提升测试自动化能力。
|
7月前
|
人工智能 自然语言处理
TxGemma:谷歌DeepMind革命药物研发!270亿参数AI药理学家24小时在线
谷歌推出专为药物研发设计的TxGemma大模型,具备药物特性预测、生物文献筛选、多步推理等核心能力,提供20亿至270亿参数版本,显著提升治疗开发效率。
241 7
TxGemma:谷歌DeepMind革命药物研发!270亿参数AI药理学家24小时在线
|
Python 机器学习/深度学习
Cross Entropy Loss 交叉熵损失函数公式推导
表达式 输出标签表示为{0,1}时,损失函数表达式为: $L = -[y log \hat{y} + (1-y)log(1- \hat{y})]$ 二分类 二分类问题,假设 y∈{0,1} 正例:$P(y = 1| x) = \hat{y}$ 反例:$P(y=0|x) = 1-\hat{y}$ 取似然函数 似然函数就是所有样本在参数θ下发生概率最大的那种情况,由于样本独立同分布,因此概率最大的情况就是每个样本发生概率的连乘。
16275 0
|
8月前
|
图形学 UED
unity Tab键实现切换输入框功能
该脚本用于简化输入框之间的Tab键切换操作。只需将脚本挂载在InputField上,无需其他设置。脚本通过监听Tab键和Shift键组合,自动选择下一个或上一个可交互的InputField,提升用户体验。
|
存储 关系型数据库 PostgreSQL
PostgreSQL有何特点?
【8月更文挑战第5天】PostgreSQL有何特点?
536 6
|
资源调度 分布式计算 Java
YARN and MapReduce的【内存】优化配置详解
在Hadoop2.x中, YARN负责管理MapReduce中的资源(内存, CPU等)并且将其打包成Container。 使之专注于其擅长的数据处理任务, 将无需考虑资源调度.
1639 0
|
安全 算法 Java
【Java小工匠聊密码学】--消息摘要--SHA3算法
1、SHA3概述 1.1 SHA3简介 由于近年来对传统常用Hash 函数如MD4、MD5、SHA0、SHA1、RIPENMD 等的成功攻击,美国国家标准技术研究所(NIST)在2005年、2006年分别举行了2届密码Hash 研讨会;同时于2007年正式宣布在全球范围内征集新的下一代密码Hash算法,举行SHA-3竞赛·新的Hash算法将被称为SHA-3,并且作为新的安全Hash标准,增强现有的FIPS 180-2标准。
5191 0
|
计算机视觉
【方便的Opencv】实现图片合成视频+附带图片生成gif
【方便的Opencv】实现图片合成视频+附带图片生成gif
【方便的Opencv】实现图片合成视频+附带图片生成gif
|
缓存 分布式计算 数据可视化
Quick BI产品核心功能大图(四)Quick引擎加速:十亿数据亚秒级分析
随着数字化进程的深入,数据应用的价值被越来越多的企业所重视。基于数据进行决策分析是应用价值体现的重要场景,不同行业和体量的公司广泛依赖BI产品制作报表、仪表板和数据门户,以此进行决策分析。