鱼C论坛

 找回密码
 立即注册
查看: 2177|回复: 3

python七八讲

[复制链接]
发表于 2019-11-5 22:31:12 From FishC Mobile | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖隐藏的内容
0. 视频中小甲鱼使用 if elif else 在大多数情况下效率要比全部使用 if 要高,但根据一般的统计规律,一个班的成绩一般服从正态分布,也就是说平均成绩一般集中在 70~80 分之间,因此根据统计规律,我们还可以改进下程序以提高效率。
score = int(input('请输入一个分数:'))
if 80 > score >= 60:
    print('C')
elif 90 > score >= 80:
    print('B')
elif 60 > score >= 0:
    print('D')
elif 100 >= score >= 90:
    print('A')
else:
    print('输入错误!')
这里把if 80 > score >= 60:
    print('C')
elif 90 > score >= 80:
两个调换位置可以吗,新手的日常提问,,,,,,,,,,
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-11-5 22:57:00 From FishC Mobile | 显示全部楼层
本帖最后由 jackz007 于 2019-11-5 23:04 编辑

      完全可以,只要 if、elif、else 能无重叠、无缝覆盖学生成绩的所有可能的分值,在逻辑上就已经合理了。至于哪个条件位置靠前,哪个条件位置靠后无关紧要,最终的效果都是一样的。
      重要的是,如果改变条件判断的位置,也一定要同时改变相应的成绩等级标志,确保最终结果的正确。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-6 01:10:14 | 显示全部楼层
要高效的话,你可以把全班的成绩好一个列表,再用循环把每个分数转换为等级,这样就有效率的差别了。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-6 21:04:34 | 显示全部楼层
当然可以。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-1-20 13:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表