成绩评级程序

  • 分数 < 60,D
  • 60 <= 分数 < 80,C
  • 80 <= 分数 < 90,B
  • 90 <= 分数 < 100,A
  • 分数 == 100,S
# 输入分数
score = int(input("请输入分数:")) # 判断评级
if score < 0 or score > 100:
print("无效的分数")
elif score < 60:
print("评级为D")
elif score < 80:
print("评级为C")
elif score < 90:
print("评级为B")
elif score < 100:
print("评级为A")
else:
print("评级为S")

elif 是 Python 中的一个关键字,它的意思是“如果前面的条件不成立,那么尝试这个条件”。

它用来在 if 语句中添加多个分支,每个分支都有一个不同的条件和对应的代码块。例如:

if a > b:
print("a大于b")
elif a == b:
print("a等于b")
elif a < b:
print("a小于b")
else:
print("无效的输入")

elif 和 else 的区别是,elif 后面需要跟一个条件,而 else 后面不需要。

elif 用来在 if 语句中添加多个互斥的分支,只有当前面的条件都不成立时,才会执行 elif 后面的代码块。

else 用来在 if 语句中添加一个默认的分支,只有当前面的条件都不成立时,才会执行 else 后面的代码块。

修改代码,让程序可以不断接收输入,直至用户输入小写字母 e 结束程序。

# 输入分数
score = input("请输入分数:")
# 判断评级
while score != "e":
score = int(score)
if score < 0 or score > 100:
print("无效的分数")
elif score < 60:
print("评级为D")
elif score < 80:
print("评级为C")
elif score < 90:
print("评级为B")
elif score < 100:
print("评级为A")
else:
print("评级为S")
# 再次输入分数
score = input("请输入分数:")

优化一下代码,让它更简洁和高效。

# 输入分数
score = input("请输入分数:")
# 判断评级
while score != "e":
score = int(score)
if 0 <= score <= 100:
# 使用字典存储评级
grade_dict = {100: "S", 90: "A", 80: "B", 60: "C"}
# 找到最接近的评级
grade = grade_dict.get(min(grade_dict.keys(), key=lambda x: abs(x - score)))
# 如果没有找到,说明评级为D
if not grade:
grade = "D"
print(f"评级为{grade}")
else:
print("无效的分数")
# 再次输入分数
score = input("请输入分数:")

Python程序笔记20230303的更多相关文章

  1. 20180821 Python学习笔记:如何获取当前程序路径

    20180821 Python学习笔记:如何获取当前程序路径 启动的脚本的路径为:D:\WORK\gitbase\ShenzhenHouseInfoCrawler\main.py 当前脚本的路径为:D ...

  2. python学习笔记-python程序运行

    小白初学python,写下自己的一些想法.大神请忽略. 安装python编辑器,并配置环境(见http://www.cnblogs.com/lynn-li/p/5885001.html中 python ...

  3. python笔记:#002#第一个python程序

    第一个 Python 程序 目标 第一个 HelloPython 程序 Python 2.x 与 3​​.x 版本简介 执行 Python 程序的三种方式 解释器 -- python / python ...

  4. Python学习笔记(Ⅰ)——Python程序结构与基础语法

    作为微软的粉丝,最后终于向Python低头了,拖了两三个月终于下定决心学习Python了.不过由于之前受到C/C#等语言影响的思维定式,前期有些东西理解起来还是很费了些功夫的. 零.先抄书: 1.Py ...

  5. Python开发【笔记】:python程序添加到systemctl系统服务

    systemctl系统服务 环境:centos7 systemctl服务使用详解 实现 正常情况下我们在/usr/lib/systemd/system/目录下,创建一个以.service 后缀的文件, ...

  6. Python学习笔记一:第一个Python程序,变量,字符编码与二进制,用户交互程序

    第一个python程序 Windows:设置环境变量,X:\pthonxxx,xxx是版本号 在命令提示符下 输入python,进入解释器 >>>print(“Hello World ...

  7. Python学习笔记:PyInstaller(exe程序打包)

    PyInstaller可以将Python程序打包成一个exe程序来独立运行,用户使用时只需要执行这个exe文件即可,不需要在机器上再安装Python及其他包就可运行了.另外,PyInstaller相较 ...

  8. Python学习笔记:py2exe打包Python程序

    使用py2exe将一个Python程序打包成一个exe程序,这样Python程序也可以在没有安装Python的环境中运行Python程序了.使用这个工具需要写一个用于打包的setup.py文件(名称可 ...

  9. Python学习笔记(四)Python程序的控制结构

    在学习了 Python 的基本数据类型后,我们就要开始接触Python程序的控制结构,了解 Python 是如何使用控制结构来更改程序的执行顺序以满足多样的功能需求.如果有的小伙伴在之前学过C语言,j ...

  10. Python学习笔记(二)使用Sublime Text编写简单的Python程序()

    一.使用Sublime Text编写Python 1.点击“文件” →”新建文件“ 2.点击”文件“→”保存“,并保存为.py文件 此时已经创建好Python文件了,接下来就可以编写Python程序了 ...

随机推荐

  1. 【转载】Python 在已存在的excel表格中写入数据

    由于每天都要汇总日报数据,其实就是个复制粘贴的工作,将多个表的数据汇总成一个表格,工作较枯燥,于是想到用Python帮我完成这个简单又粗糙的工作.写一下我学到的几个小技巧,下次忘记怎么使用的时候,还能 ...

  2. python中的变量定义

    1 变量名:由下划线.字母和数字组成 2 python中变量名的特殊含义: xx:标准的标识符,共有的 _xx:只是在from - import *时是不会被导入的,其他导入方式会被引入 隐藏变量还有 ...

  3. HTML基础知识学习

    一.HTML概述 1.系统结构: ①.B/S架构 Browser Server(浏览器/服务器的交互形式.) Browser支持哪些语言:HTML CSS Javascript S是服务器端Serve ...

  4. 入门文章学习(一)-Beginner Tutorial

    Abstract: 参照"背景知识查阅"一文的学习路径,对几篇文章的学习做了记录.这是"Beginner Tutorial"一文的学习笔记. 文章链接: htt ...

  5. 1007.Django模型基础02

    一.常用的查询 常用的查询方法(注:User为app项目): 获取所有的记录: rs = User.objects.all() 获取第一条数据:rs = User.objects.first() 获取 ...

  6. 【ES6】迭代器

    简介 在 JavaScript 中,迭代器是一个对象,它定义一个序列,并在终止时可能返回一个返回值. 更具体地说,迭代器是通过使用 next() 方法实现迭代器协议的任何一个对象,该方法返回具有两个属 ...

  7. Jmeter之post上传文件(jmeter接口测试请求参数上传文件)

    一,上传excel等普通文件 接口测试时有接口文档的话,那就对着文档写,没api文档,就自己抓包看了. 接口文档 抓包查看 步骤一:接口请求切换至文件上传(Files Upload)栏 content ...

  8. NX二次开发 批量导出X_T(包括部件里的装配体)

    VS2019 NX1946 UF_initialize(); string filepath = strDir + "\\";//拼接路径 //获取图层过滤 PropertyLis ...

  9. Qt 学习笔记 - 第三章 - Qt的三驾马车之一 - 串口编程 + 程序打包成Windows软件

    Qt 学习笔记全系列传送门: Qt 学习笔记 - 第一章 - 快速开始.信号与槽 Qt 学习笔记 - 第二章 - 添加图片.布局.界面切换 [本章]Qt 学习笔记 - 第三章 - Qt的三驾马车之一 ...

  10. SQL Injection(SQL注入)

    什么是SQL注入? SQL(结构化查询语言)注入,通常称为 SQLi,是对 Web 应用程序数据库服务器的攻击,会导致执行恶意查询.当 Web 应用程序使用未经正确验证的用户输入与数据库通信时,攻击者 ...