当前位置: 首页 > article >正文

Python 的分支结构

引言

        在前面的课程中,我们已经学习了 Python 的基本输入输出、数据类型及其转换,以及简单的顺序结构程序设计。本课时将介绍 Python 中的分支结构,主要讨论如何使用条件语句 if, elif, else 来根据不同的条件执行不同的代码块。通过两个具体的示例——判断一个数是奇数还是偶数,以及计算一个人的健康指数,我们将展示如何在实际编程中应用这些知识。

分支结构

        在编程中,分支结构使得程序可以根据不同的条件执行不同的代码路径。Python 中提供了 if, elif, else 语句来实现分支结构。

  1. if 语句:如果指定的条件为真,则执行相应的代码块。
  2. elif 语句:如果上面的 if 语句不成立,则检查 elif 语句的条件是否为真,如果为真,则执行相应的代码块。
  3. else 语句:如果上面的所有条件都不成立,则执行 else 语句块中的代码。

判断一个数是奇数还是偶数

我们首先来看一个简单的示例,通过用户输入一个整数,判断它是奇数还是偶数。

示例代码

# 打印欢迎信息
print("欢迎使用奇偶数判断器!")

# 获取用户输入的数字
number = input("请输入一个整数:")

# 尝试将输入转换为整数
try:
    number = int(number)
except ValueError:
    print("输入错误:请输入有效的整数!")
else:
    # 判断数字是奇数还是偶数
    if number % 2 == 0:
        print(f"您输入的数字 {number} 是偶数。")
    else:
        print(f"您输入的数字 {number} 是奇数。")

健康指数

        接下来,我们看一个稍微复杂一点的应用,根据用户输入的体重和身高计算其 BMI(Body Mass Index,身体质量指数),并根据结果给出相应的健康建议。

示例代码

# 打印欢迎信息
print("欢迎使用健康指数计算器!")

# 获取用户输入的体重和身高
weight = input("请输入您的体重(单位:千克):")
height = input("请输入您的身高(单位:米):")

# 尝试将输入转换为浮点数
try:
    weight = float(weight)
    height = float(height)
except ValueError:
    print("输入错误:请输入有效的数字!")
else:
    # 计算BMI
    bmi = weight / (height ** 2)
    
    # 根据BMI值评价健康状况
    if bmi < 18.5:
        print(f"您的BMI指数为:{bmi:.2f},属于偏瘦。")
    elif 18.5 <= bmi < 24:
        print(f"您的BMI指数为:{bmi:.2f},属于正常范围。")
    elif 24 <= bmi < 28:
        print(f"您的BMI指数为:{bmi:.2f},属于超重。")
    else:
        print(f"您的BMI指数为:{bmi:.2f},属于肥胖。")

小结

        通过本课时的学习,你已经掌握了 Python 中的分支结构,并通过两个综合应用示例展示了如何使用 if, elif, else 语句来实现条件判断。分支结构使得程序可以根据不同的条件执行不同的代码路径,增强了程序的灵活性和实用性。


http://www.kler.cn/a/304578.html

相关文章:

  • FluentUI使用
  • Webkit 滚动条样式属性
  • HAproxy 详解
  • 【学习】Fine-tuning知识汇总
  • HBase理论_背景特点及数据单元及与Hive对比
  • ❤React-React 组件基础(类组件)
  • 如何选择适合企业的高效财税自动化软件
  • 桌面应用框架:tauri是后起之秀,赶上electron路还很长。
  • Mysql | 知识 | 理解是怎么加锁的
  • ansible企业实战
  • 高级java每日一道面试题-2024年9月09日-数据库篇-事务提交后数据仍然没有持久化,可能的原因是什么?
  • 海外服务器:开启全球业务的关键钥匙
  • 神经网络的公式推导与代码实现(论文复现)
  • OFDM系统PAPR算法的MATLAB仿真,对比SLM,PTS以及CAF,对比不同傅里叶变换长度
  • Java中的Lambda表达式和Stream API详解
  • NLTK:一个强大的自然语言处理处理Python库
  • Linux python pyinstaller 打包问题
  • 基于React通用的 WebSocket 钩子 useWebSocket
  • 二进制部署ETCD单机版
  • VITS 源码解析2-模型概述
  • 3.ChatGPT在教育领域的应用:教学辅助与案例分享(3/10)
  • 【kafka】消息队列
  • OpenHarmony鸿蒙( Beta5.0)摄像头实践开发详解
  • RK3588人工智能学习笔记-WSL中使用RKNN-ToolKit2
  • OpenAI全新发布o1模型:开启 AGI 的新时代
  • Kafka下载与安装教程(国产化生产环境无联网服务器部署实操)