python入门知识:分支结构

前言

嗨喽,大家好呀~这里是爱看美女的茜茜呐

1.内容导图


👇 👇 👇 更多精彩机密、教程,尽在下方,赶紧点击了解吧~

python资料、视频教程、代码、插件安装教程等我都准备好了,直接在文末名片自取就可


2.流程图介绍

绘制要求:不能出现程序语言的语法

3.百分制转五级计分制

  • 分支结构:语句块,冒号+缩进表示归属

  • 单分支:if语句

  • 双分支:if-else语句

  • 多分支:if-elif-else语句

  • 三元运算符:exp1 if option == True else exp2,双分支结构的简写形式

示例一:输入百分制的整数成绩,输出对应的ABCDE等级

流程图绘制

测试驱动:嵌入式方式,测试先行

代码实现:根据流程图,翻译成代码

python 复制代码
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取商,该数就是等级串对应的索引位置,

其实现代码修改如下(重新运行测试进行验证):

python 复制代码
def convert(s):
    if s < 0 or s > 100: return "invalid score"		#非法情况排出,避免第4行越界
    levels = "EEEEEEDCBAA"
    return levels[s // 10]

尾语

感谢你观看我的文章呐~本次航班到这里就结束啦 🛬

希望本篇文章有对你带来帮助 🎉,有学习到一点知识~

躲起来的星星🍥也在努力发光,你也要努力加油(让我们一起努力叭)。

最后,宣传一下呀~👇👇👇更多源码、资料、素材、解答、交流皆点击下方名片获取呀👇👇

相关推荐
Elastic 中国社区官方博客23 分钟前
Observability:当 YAML 遇上 IConfiguration:OpenTelemetry .NET SDK 的声明式配置
大数据·开发语言·elasticsearch·搜索引擎·全文检索·.net
郑州光合科技余经理26 分钟前
同城商城源码:商品库和订单库怎么随包交付
android·java·开发语言·后端·uni-app·php·ai编程
welfare96238 分钟前
新号别搞:C++_list
开发语言·c++
数据狐(Datafox)40 分钟前
一文读懂京东商品详情 API:返回字段解读与 JSON 样例
开发语言·数据库·爬虫·json
MoRanzhi120344 分钟前
第3篇 · 使用 PyQt5 实现 2048 桌面版游戏:MVC 架构与撤销和重做
python·mvc·pyqt5·桌面应用开发·gui开发·2048游戏·撤销与重做
蚰蜒螟1 小时前
从 Java SocketChannel 到 TCP 挥手:一次 close() 的完整调用链与引用计数解析
java·python·tcp/ip
坤坤子吖1 小时前
Linux 线程同步与互斥——条件变量与线程同步
linux·开发语言·c++·笔记·学习
damoluomu1 小时前
国产 Java CMS 的协议和坑,讲清楚
java·开发语言
Wang's Blog1 小时前
Java 项目实战: 交友项目 - 黑名单:分页查询黑名单
java·开发语言·交友
Smoothcloud润云1 小时前
GPU算力平台跑知识库问答,模型回答总跑偏?先排查检索链路
人工智能·python·深度学习·gpu算力·gpu