Python(三十三)分支结构——嵌套if的使用

news2024/10/7 12:28:51

❤️ 专栏简介:本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中,我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。
☀️ 专栏适用人群 :本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无论你是学生、职场人士还是对编程感兴趣的爱好者,都能从中受益。跟着我的学习笔记一起学习python吧。
🌙专栏目标:本专栏的目标是帮助我自己记忆、方便回顾所学知识以及帮助其他想学习python的小伙伴掌握Python编程语言的基本概念和技巧,并逐步提高我们的编程能力。通过这个专栏,我们将学会如何编写Python代码,理解各种数据类型、控制结构和函数,掌握常用的Python模块和库,以及应用Python解决实际问题。

⭐️ 专栏主要内容: 主要学习python的开发环境搭建;Python的基础知识,包括变量、数据类型、条件语句和循环等;python的数据结构和算法;python的函数和模块;python的文件处理等。
🌴 专栏说明 :如果文章知识点有错误的地方,欢迎大家随时在文章下面评论,我会第一时间改正。让我们一起学习,一起进步。
💑专栏主页:从零开始的Python入门之路

在这里插入图片描述

在编程中,分支结构是根据条件判断选择执行不同代码块的一种程序结构。本篇博客将详细介绍分支结构中的一种常见形式——嵌套if。我们将了解嵌套if的概念、语法结构以及它的使用示例和应用场景。

嵌套if

  1. 什么是嵌套if:
    嵌套if是指在一个if语句的代码块中再次使用if语句。通过嵌套if,我们可以在一个条件的基础上进行更详细的条件判断,实现更复杂的控制流程。

  2. 嵌套if的语法结构:
    嵌套if的语法结构如下:

if 条件1:
    # 执行条件1为真的代码块
    if 条件2:
        # 执行条件2为真的代码块
    else:
        # 执行条件2为假的代码块
else:
    # 执行条件1为假的代码块

在嵌套if中,我们在一个if块中嵌套了另一个if块。根据条件的真假选择执行相应的代码块。如果条件1为True,则进入条件1为真的代码块,在其中继续判断条件2的真假;如果条件1为False,则执行条件1为假的代码块。

  1. 嵌套if的使用示例:
    下面是一个简单的示例代码,演示了嵌套if的使用:
score = int(input("请输入您的考试分数:"))  # 获取用户输入的考试分数

if score >= 60:
    if score >= 90:
        print("您的成绩为优秀。")
    elif score >= 80:
        print("您的成绩为良好。")
    else:
        print("您的成绩为及格。")
else:
    print("您的成绩不及格。")

运行结果:

请输入您的考试分数:85
您的成绩为良好。

在上面的示例中,根据用户输入的考试分数,首先判断是否及格(大于等于60),如果及格,则进一步判断是否优秀(大于等于90)、良好(大于等于80)或及格;如果不及格,则直接输出"您的成绩不及格。"

  1. 嵌套if的应用:
    嵌套if常用于根据条件执行更详细的操作。它可以用于多层条件判断、根据不同条件执行不同的操作等。通过嵌套if,我们可以根据不同的情况执行相应的代码块,实现更复杂的控制流程。

参考链接:

  • Python官方文档:https://docs.python.org/3/tutorial/controlflow.html#if-statements
  • W3School嵌套if教程:https://www.w3schools.com/python/python_conditions.asp

总结:
嵌套if是一种在一个if语句的代码块中再次使用if语句的分支结构。通过嵌套if,我们可以在一个条件的基础上进行更详细的条件判断,实现更复杂的控制流程。通过使用嵌套的if-else语句,我们可以根据不同的条件执行不同的操作,实现灵活的控制流程。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/782644.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android Studio下载

目录 确定版本下载地址 确定版本 如果是入职工作,先和同事确定好版本。因为每个项目使用的gradle插件版本,是在根目录的build.gralde文件中统一定义的,这个文件在添加第三方库(例如GreenDao,Arouter等)或者…

SpringBoot项目的创建

等待maven下载完成 删除无用文件 此时我们就创建成功了

Shiro权限绕过漏洞(CVE-2020-1957,CVE-2020-11989、CVE-2020-13933)

一、Apache Shiro Apache Shiro 是一个强大且易用的Java安全框架,能够用于身份验证、授权、加密和会话管理。 二、Shiro漏洞指纹(部分) 1、在请求包的cookie中有remember字段赋任意值 2、返回包中存在set-Cookie:remeberMedeleteMe 三、受…

通过宝塔面板将vue项目放到阿里云服务器(两个vue项目)

前提条件: 端口提前开放所需环境安装好(Nginx node…)以及打包好的vue文件(dist) 第一步:上传文件到自定义目录 第二步:在首页找到Nginx软件并配置 第三步:配置具体的配置 这里说…

「雕爷学编程」Arduino动手做(39)——DS18B20温度传感器3

37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的&#x…

厦门枫叶时代看电视的新趋势

随着“5G电视”技术的不断普及和城市数字化转型的加速,电视行业也在发生着翻天覆地的变化。在这个背景下,第28届上海电视节推出了高端论坛板块——“白玉兰对话”,共同探讨电视行业的未来发展。其中备受瞩目的中国电视剧发展论坛,…

荔枝派Zero(全志V3S)驱动开发之USB摄像头

文章目录 前言一、内核配置 UVC二、编译内核并烧录到 SD 卡三、上电测试四、mjpeg-streamer 视频流服务器测试1、jpeg 库的移植2、移植 mjpeg-streamer①、前置软件②、下载 mjpg-streamer 源码③、修改 mjpg-streamer 源码④、编译 mjpg-streamer 源码 3、搬移文件到 nfs 目录…

2023/07/23

1. 必须等待所有请求结束后才能执行后续操作的处理方式 方式一: async func () {const p1 await api1();const p2 await api2();const p3 await api3();Promise.all([p1, p2, p3]).then(res > {后续操作...}) }方式二:待补充 2. flex 弹性盒子布…

300M的联通宽带,电脑直接连接光猫只有100M;电脑连接路由器,然后路由器连接光猫却有300M???

1. 现象 300M的联通宽带,用了小半年之后发现网络比以前满,通过https://www.speedtest.cn网站测试发现只有100M 2. 猜测 难道是联通这帮人,偷偷把我网速降到了100M??? 3. 排查过程 打电话让联通师傅上门排查…

使用 Qt designer

使用 Qt designer 1、配置Qt designer外部工具2、Qt designer(Qt 设计师)使用2.1 创建保存文件ui2.2 pyuic5.exe 工具 转化成为py文件2.3 直接导入UI文件 2、qrc资源管理器 1、配置Qt designer外部工具 实质就是 Qt\bin 工具中 designer.exe 请查看 PyQ…

Docker 核心概念深度解析:探索容器、镜像和仓库在Docker生态系统中的重要作用和 应用

🌷🍁 博主 libin9iOak带您 Go to New World.✨🍁 🦄 个人主页——libin9iOak的博客🎐 🐳 《面试题大全》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~&#x1f33…

Redis应用(3)——Redis的项目应用(二):抢购图书 ---> Redis高并发的问题 分布式锁Redission的使用

目录 引出Redis的高并发问题redis的高并发问题Redisson中间件引入RedissonRedisson配置Redisson应用报错:java.lang.NoClassDefFoundErro Redis的项目应用(二):抢购图书1.0版本,Java代码:数据不安全测试方法…

Python+Selenium做自动化测试

一.项目介绍 目的 测试某官方网站登录功能模块可以正常使用 用例 1.输入格式正确的用户名和正确的密码,验证是否登录成功; 2.输入格式正确的用户名和不正确的密码,验证是否登录失败,并且提示信息正确; 3.输入格式正…

H 欢乐颂+J 睡美人

H 欢乐颂 登录—专业IT笔试面试备考平台_牛客网 思路:这个题就是题意比较难懂,思路还挺好想的,其实就是每个点都有几个状态,然后只有存在相同状态的点之间才可以连边,假设点i的状态和为a,点j的状态和为b&a…

Packet Tracer – 配置无线路由器上的端口转发

Packet Tracer – 配置无线路由器上的端口转发 地址分配表 设备 接口 IP 地址 子网掩码 LA 互联网 209.165.134.1 255.255.255.252 LAN 192.168.0.1 255.255.255.0 拓扑图 目标 第 1 部分:配置端口转发 第 2 部分:验证 ServerA 远程连接 …

C语言基础:预处理指令的使用

本文结合工作经验,研究C语言中常见的预处理指令的用法。 文章目录 1 预处理指令概念2 常见的预处理指令2.1 #include包含头文件2.2 #define定义宏2.2.1 类对象宏(object-like macro)2.2.2 类函数宏(function-like macro&#xff…

Docker 镜像的创建

Docker 镜像的创建 创建镜像有三种方法,分别为基于已有镜像创建、基于本地模板创建以及基于Dockerfile创建。 1.基于现有镜像创建 基于现有镜像创建 先使用现有镜像创建容器 docker run 再进入容器进行内容的更新 docker exex 最后提交成新的进行 …

C++语法总结

今天给大家带来的不是某个知识点的解说,而是我花了几个小时的时间,写的一个C的思维导图,希望大家能够喜欢 以上是我对C语法的一些理解,有些可能是我遗漏了,有不对的地方希望大家能够指出,最后,子…

【Atcoder】 [ARC151D] Binary Representations and Queries

题目链接 Atcoder方向 Luogu方向 题目解法 首先需要得到一个性质: 当 X i ≠ X j Xi\ne Xj XiXj 时, i , j i,j i,j 操作的先后顺序可以交换 证明: 可以画一张图,只考虑 Y i Y j 0 YiYj0 YiYj0 的情况,其他情…

力扣256.翻转二叉树(递归/qBFS) 剑指offer 32 从上到下打印二叉树(q BFS)I II III(三道题)

采用队列 class Solution { public:TreeNode* invertTree(TreeNode* root) {queue<TreeNode*> q;if(rootNULL) return root;q.push(root);int i0;while(!q.empty()){TreeNode *curq.front();swap(cur->left,cur->right);if(cur->left) q.push(cur->left);if…