前言
嗨喽,大家好呀~这里是爱看美女的茜茜呐
1.内容导图
👇 👇 👇 更多精彩机密、教程,尽在下方,赶紧点击了解吧~
python资料、视频教程、代码、插件安装教程等我都准备好了,直接在文末名片自取就可
2.流程图介绍
绘制要求:不能出现程序语言的语法
3.百分制转五级计分制
-
分支结构:语句块,冒号+缩进表示归属
-
单分支:if语句
-
双分支:if-else语句
-
多分支:if-elif-else语句
-
三元运算符:exp1 if option == True else exp2,双分支结构的简写形式
示例一:输入百分制的整数成绩,输出对应的ABCDE等级
流程图绘制
测试驱动:嵌入式方式,测试先行
代码实现:根据流程图,翻译成代码
def convert(s):
"""
>>> convert(85)
'B'
>>> convert(92)
'A'
>>> convert(79)
'C'
>>> convert(60)
'D'
>>> convert(0)
'E'
"""
level = "A"
if s < 60:
level = "E"
elif s < 70:
level = "D"
elif s < 80:
level = "C"
elif s < 90:
level = "B"
return level
if __name__ == "__main__":
import doctest
doctest.testmod(verbose=True)
扩展:查找表技术,去掉大分支。
先利用等级串缓存所有等级“EEEEEEDCBAA”,分别对应各个分数段;
然后分数直接对10取商,该数就是等级串对应的索引位置,
其实现代码修改如下(重新运行测试进行验证):
def convert(s):
if s < 0 or s > 100: return "invalid score" #非法情况排出,避免第4行越界
levels = "EEEEEEDCBAA"
return levels[s // 10]
尾语
感谢你观看我的文章呐~本次航班到这里就结束啦 🛬
希望本篇文章有对你带来帮助 🎉,有学习到一点知识~
躲起来的星星🍥也在努力发光,你也要努力加油(让我们一起努力叭)。