12、Python -- if 分支 的讲解和使用

目录

  • 程序结构
  • 顺序结构
  • 分支结构
    • 分支结构注意点
    • 不要忘记冒号
  • if条件的类型
  • if条件的逻辑错误
  • if表达式
  • pass语句

程序流程
分支结构
分支结构的注意点
if条件的类型
if语句的逻辑错误
if表达式

程序结构

Python同样提供了现代编程语言都支持的三种流程
顺序结构
分支结构
循环结构

在这里插入图片描述

顺序结构

顺序结构就是程序从上到下一行行地执行,中间没有任何判断和跳转。

如果不使用流程控制,Python程序的语句是一个顺序执行流,从上向下依次执行每条语句。

分支结构

if分支使用布尔表达式或布尔值作为分支条件来进行分支控制。
Python的if分支既可作为语句使用,也可作为表达式使用

在这里插入图片描述

分支结构注意点

Python的语句块是通过缩进来标记的(大部分语言都使用花括号或end作为语句块的标记),相同缩进的多行代码属于同一个语句块。

同一个代码块可以缩进1个空格、2个空格、3个空格……或1个Tab位,这都是符合语法要求的。但同一个代码块的缩进要统一。
在这里插入图片描述

不要忘记冒号

从Python语法解析器的角度来看,Python冒号精确表示代码块的开始点——这个功能不仅在条件执行体中如此,后面的循环体、方法体、类体全部都应遵守该规则。

条件执行体、循环体、方法体、类体,都是从冒号开始,后面统一缩进的部分算一个整体的代码块

if条件的类型

if条件可以是任意类型,除了False本身之外,各种代表“空”的None、空字符串、空元组、空列表、空字典,都会被当成False处理,以下各值都会被当成False:

False、None、0、“”、()、[]、{}

在这里插入图片描述

if条件的逻辑错误

表面上看,else后没有任何条件,或者elif后只有一个条件——但这不是真相:因为else的含义是“否则”——else本身就是一个条件!

这也是把if、else后代码块统称为条件执行体的原因,else的隐含条件是对前面条件取反

代码解释:
在这里插入图片描述

if表达式

if分支语句还可作为表达式,此时if表达式相当于代替其他语言中的三目运算符。
在这里插入图片描述

pass语句

pass语句就是空语句。

有时候程序需要占一个位、放一条语句,但又不希望这条语句做任何事情,此时就可通过pass语句来实现了。

通过使用pass语句,可以让程序更完整。

在这里插入图片描述

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

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

相关文章

Unity DOTS系列之Filter Baking Output与Prefab In Baking核心分析

最近DOTS发布了正式的版本, 我们来分享一下DOTS里面Baking核心机制,方便大家上手学习掌握Unity DOTS开发。今天给大家分享的Baking机制中的Filter Baking Output与Prefab In Baking。 对啦!这里有个游戏开发交流小组里面聚集了一帮热爱学习游戏的零基础…

SQL Delete 语句(删除表中的记录)

SQL DELETE 语句 DELETE语句用于删除表中现有记录。 SQL DELETE 语法 DELETE FROM table_name WHERE condition; 请注意删除表格中的记录时要小心!注意SQL DELETE 语句中的 WHERE 子句! WHERE子句指定需要删除哪些记录。如果省略了WHERE子句&#xff…

【数据结构】数组和字符串(二):特殊矩阵的压缩存储:对角矩阵——一维数组

文章目录 4.2.1 矩阵的数组表示4.2.2 特殊矩阵的压缩存储a. 对角矩阵的压缩存储结构体初始化元素设置元素获取打印矩阵主函数输出结果代码整合 4.2.1 矩阵的数组表示 【数据结构】数组和字符串(一):矩阵的数组表示 4.2.2 特殊矩阵的压缩存储…

Elasticsearch配置文件

一 前言 在elasticsearch\config目录下,有三个核心的配置文件: elasticsearch.yml,es相关的配置。jvm.options,Java jvm相关参数的配置。log4j2.properties,日志相关的配置,因为es采用了log4j的日志框架。这里以elasticsearch6.5.4版本为例,并且由于版本不同,配置也不…

UG\NX二次开发 实现“适合窗口”的功能

文章作者:里海 来源网站:王牌飞行员_里海_里海NX二次开发3000例,里海BlockUI专栏,C\C++-CSDN博客 感谢粉丝订阅 感谢 shsjdj 订阅本专栏,非常感谢。 简介 实现“适合窗口”的功能 效果 代码1 #include "me.hpp"extern DllExport void ufusr(char* param, int* re…

【数据结构与算法】二叉树的综合运用

目录 一,层序遍历算法 1-1,队列结构的设立 1-2,逻辑分析 二,判断单值二叉树 三,求二叉树的最大深度 一,层序遍历算法 二叉树的层序遍历是一层一层的从左到右遍历,现在问题是二叉树不支持随…

我们距离“裸眼3D自由”,还有多远?

还记得2018年,我曾熬夜好几天,就为了抢一张故宫博物院“清明上河图互动艺术展演”的门票。 后来,我也曾去过很多城市,看过不少策划精良的展览。那场“穿越北宋”的名画之旅,依然是我看过的,最具沉浸感的一场…

【Linux】kill 命令使用

经常用kill -9 XXX 。一直在kill,除了kill -9 -15 ,还能做什么?今天咱们一起学习一下。 kill 命令用于删除执行中的程序或工作。 kill命令 -Linux手册页 命令选项及作用 执行令 man kill 执行命令结果 参数 -l 信号,若果…

力扣学习笔记——49. 字母异位词分组

49. 字母异位词分组 https://leetcode.cn/problems/group-anagrams/?envTypestudy-plan-v2&envIdtop-100-liked 给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。 字母异位词 是由重新排列源单词的所有字母得到的一个新单词。…

驱动开发5 阻塞IO实例、IO多路复用

1 阻塞IO 进程1 #include <stdlib.h> #include <stdio.h> #include <sys/types.h> #include <sys/stat.h> #include <sys/ioctl.h> #include <fcntl.h> #include <unistd.h> #include <string.h>int main(int argc, char co…

Luckyexcel 加载 springboot 后台返回的 excel 文件并显示

&#x1f451; 博主简介&#xff1a;知名开发工程师 &#x1f463; 出没地点&#xff1a;北京 &#x1f48a; 2023年目标&#xff1a;成为一个大佬 ——————————————————————————————————————————— 版权声明&#xff1a;本文为原创文…

Unity - 导出的FBX模型,无法将 vector4 保存在 uv 中(使用 Unity Mesh 保存即可)

文章目录 目的问题解决方案验证保存为 Unity Mesh 结果 - OK保存为 *.obj 文件结果 - not OK&#xff0c;但是可以 DIY importer注意References 目的 备忘&#xff0c;便于日后自己索引 问题 为了学习了解大厂项目的效果&#xff1a; 上周为了将 王者荣耀的 杨玉环 的某个皮肤…

关于nacos的配置获取失败及服务发现问题的排坑记录

nacos配置更新未能获取到导致启动报错 排查思路&#xff1a; 1、是否添加了nacos的启动pom依赖 参考&#xff1a; <dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId><…

vue3中的route和router

因为我们在 setup 里面没有访问 this&#xff0c;所以我们不能再直接访问 this.$router 或 this.$route。作为替代&#xff0c;我们使用 useRouter 和useRoute函数,或者 Vue3 中提供了一个 getCurrentInstance 方法来获取当前 Vue 实例 <script setup>import { useRoute…

GEE图表——利用NOAA气象数据绘制气温预测图

简介 气象预测是通过气象数据和模型对未来某一时间和地点的天气情况进行预测。 具体步骤如下&#xff1a; 1. 数据采集&#xff1a;从气象观测站、卫星等获取气象数据&#xff0c;包括气压、水汽、风速、温度、降雨、云量等。 2. 数据清洗&#xff1a;对采集到的数据进行质…

学到一招 chrome 浏览器 debug 悬浮样式

前言 今天在想调试一个开源 UI 框架的某个table row的隔行换色的样式设置&#xff0c;发现这个颜色只有鼠标悬浮在row的时候才能拿到&#xff0c;但是想要拷贝 row 样式&#xff0c;鼠标必须离开悬浮区域&#xff0c;去chrome的debug控制台内才能拷贝&#xff0c;但是一离开悬…

Qt之设置QLineEdit只能输入浮点数

Qt提供了QDoubleValidator来进行浮点数校验,但是它同样存在限定范围无效的问题,详见:Qt之彻底解决QSpinBox限定范围无效的问题 因此我们要子类化QDoubleValidator,并重写其中的validate方法,最后调用QLineEdit的setValidator方法,并将这个子类当做参数传入。 QHDoubleVa…

怎么降低Linux内核驱动开发的风险?

降低Linux内核驱动开发的风险是一个重要的目标&#xff0c;因为内核驱动开发可能会对系统的稳定性和安全性产生重要影响。以下是一些降低风险的建议&#xff1a; 1. 深入了解Linux内核&#xff1a;在开始内核驱动开发之前&#xff0c;建议深入学习Linux内核的工作原理和架构&a…

[Unity]将所有 TGA、TIFF、PSD 和 BMP(可自定义)纹理转换为 PNG,以减小项目大小,而不会在 Unity 中造成任何质量损失

如何使用 只需在“项目”窗口中创建一个名为“编辑器”的文件夹&#xff0c;然后在其中添加此脚本即可。然后&#xff0c;打开窗口-Convert Textures to PNG&#xff0c;配置参数并点击“Convert to PNG&#xff01; ”。 就我而言&#xff0c;它已将某些 3D 资源的总文件大小…

交互式 Web 应用 0 基础入门

初探 Gradio&#xff1a;轻松构建交互式 Web 应用 文章目录 初探 Gradio&#xff1a;轻松构建交互式 Web 应用Why Gradio?安装 Gradio创建交互式界面1. gr.Interface2. gr.Blocks 强大的组件库输入输出组件控制组件布局组件 示例交互式数据可视化多组件同时&#xff08;嵌套&a…