每天学点儿Python(2)-- if语句,match语句

一、语句块

Python中,语句块是指按一定逻辑顺序组织成的语句。它是通过缩进来表示层级关系(其它语言,如C/C++,Java等,都是通过大括号{}来表示)

Python中缩进一般是通过4个空格或一个tab键来表示

二、if语句

if语句表示方式

#if语句表示方式if 条件1:语句块1
elif 条件2:语句块2
else:语句块3

if-else语句仅仅执行第一次满足条件的那条分支,执行完毕后退出if-else语句

举例如下:

#input函数从控制台读取的数据都是以字符串存储
#eval函数是去除字符串两端的引号num=eval(input("请输入考试成绩:"))#print("输入的成绩为:",num)  #此语句报错,因为num已经不在是字符串,而是数字#以下示例为通用示例,可以根据实际情况选择是否使用elif或else分支if num>100 or num<0:print("输入的考试成绩错误")
elif num<60:print("考试成绩为:E")
elif num<70:print("考试成绩为:D")
elif num<80:print("考试成绩为:C")
elif num<90:print("考试成绩为:B")
else:print("考试成绩为:A")#假如此时num值为75,则满足  elif num<80:  分支,所以只打印: 考试成绩为:C
#虽然后面的语句也满足,但仍旧不执行

特殊情况

如果是二分支(即只有一个if和else)并且每个分支有且只有一句语句,可以简写成一句

num=eval(input("请输入密码:"))#写法一if num==123print("密码过于简单,请重写!")
elseprint("密码符合要求!")#写法二
#上面是二分支结构,且每个分支只有一条语句。所以可以简写成如下结构print("密码过于简单,请重写!") if num==123 else print("密码符合要求!")#写法二语句解析:
#如果满足if语句,则执行最开始的print语句  print("密码过于简单,请重写!") 
#如果不满足if语句,则执行else语句  print("密码符合要求!")

语句嵌套

if语句可以多层嵌套使用,嵌套语句依旧通过缩进来表示层级关系

if 条件1:if 条件2:语句块1elif 条件3:语句块2else  条件4:语句块4
else:if 条件5:语句块5

举例如下

num=eval(input("请输入考试成绩:"))if 0<num<=100:if num < 60:print("成绩不及格!")else:print("成绩及格!")
else:print("成绩无效")

三、match语句(此语句仅在3.11及其后版本支持)

match语句与C/C++中的switch语句类似,其语法结构为

match 值:case 值1:语句块1case 值2:语句块2case _:语句块3

上例中的 下划线 代表一定满足,类似C/C++中的default

例如:

num=input("请输入成绩:")match num:case 'A':print("成绩优秀")case 'E':print("成绩不及格")case _:print("成绩中等")

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

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

相关文章

云计算概述报告

以下是一篇论述类文章 文章目录 I. 云计算介绍&#xff08;1&#xff09;云计算基本概念&#xff08;2&#xff09;云计算基本特征 II. 云计算发展历程&#xff08;1&#xff09;云计算的起源&#xff08;2&#xff09;云计算的发展阶段 III. 云计算特点&#xff08;1&#xff…

【BFS】母亲的牛奶

农夫约翰有三个容量分别为 A,B,C升的挤奶桶。最开始桶 A 和桶 B 都是空的&#xff0c;而桶 C里装满了牛奶。有时&#xff0c;约翰会将牛奶从一个桶倒到另一个桶中&#xff0c;直到被倒入牛奶的桶满了或者倒出牛奶的桶空了为止。这一过程中间不能有任何停顿&#xff0c;并且不会…

VisionOS应用开发需要哪些工具

标题: VisionOS应用开发需要哪些工具 标签: [VisionOS, 空间计算] 分类: [VisionOS, 开发工具] 说下开发visionOS空间应用需要哪些准备&#xff0c;这里我找了下&#xff0c;列出来给大家。 xcode 15.22d: SwiftUI3d: RealityKit/Unity 3D实体空间: ARKitIntel Mac上可以运行X…

mysql8.0下载安装详细步骤 图文教程

下载mysql 保证电脑上之前没有安装过mysql&#xff0c;或者已经卸载完毕。 mysqk8.0 下载地址 解压 新建一个专门存放mysql文件夹&#xff0c;将下载的压缩包解压到这个文件夹里面。 配置 添加一个data文件夹&#xff0c;用来存放数据 新建一个my.txt文本&#xff0c;复制…

C++语言·入门

现在我们讲完了数据结构初阶部分的内容&#xff0c;数据结构剩下的内容会在C语言讲解的差不多的时候加入。 1. 什么是C C语言是结构化模块化的语言&#xff0c;适合处理较小规模的程序。对于复杂的问题&#xff0c;规模较大的程序&#xff0c;需要高度抽象和建模时&#xff0c…

机器视觉学习(十一)—— 最小矩形和圆形区域、近似轮廓、凸包

目录 一、最小矩形区域与最小圆形区域 1.1 cv2.minAreaRect()函数 1.2 cv2.minEnclosingCircle()函数 1.3 最小矩形区域与最小圆形区域示例 二、 显示近似轮廓 2.1 cv2.approxPolyDP()函数 2.2 显示近似轮廓示例代码 2.2.1 简约版 2.2.2 进阶版 三、 显示凸包 3.…

软件测试-用例篇

目录 1 测试用例的基本要素2 测试用例给我们带来的好处3 测试用例的设计方法3.1 基于需求进行测试用例的设计3.1.1 功能需求测试分析3.1.2 非功能需求测试分析 4 具体的设计方法4.1 等价类4.2 边界值4.3 错误猜测法4.4 场景设计法4.5 因果图4.5.1 因果图需要掌握的基本知识4.5.…

用一个程序解决SQLite常见的各项操作(实用篇)

文章说明&#xff1a; 本篇文章是在之前的一篇文章SQLite3进行数据库各项常用操作基础上写的&#xff0c;将SQLite涉及到的常用的几种操作&#xff0c;以函数的形式处理成相互调用的形式。 因为之前的文章对基础操作已经解释过了&#xff0c;所以这里直接放置可执行代码和结果…

kali常用命令功能简介记录

Kali Linux中常用的命令&#xff1a; 1. apt-get update&#xff1a;更新软件源列表。 2. apt-get upgrade&#xff1a;升级系统中已安装的软件包。 3. apt-get install [软件包]&#xff1a;安装指定的软件包。 4. apt-get remove [软件包]&#xff1a;卸载指定的软件包。 5.…

上海开放大学2024春《机械工程导论》简答题参考答案

答案&#xff1a;更多答案&#xff0c;请关注【电大搜题】微信公众号 答案&#xff1a;更多答案&#xff0c;请关注【电大搜题】微信公众号 答案&#xff1a;更多答案&#xff0c;请关注【电大搜题】微信公众号 机械工程导论 - 简答题 一共五个题&#xff1a; 1. 材料力学…

301.【华为OD机试】最小传输时延I(Dijkstra 算法—JavaPythonC++JS实现)

本文收录于专栏:算法之翼 本专栏所有题目均包含优质解题思路,高质量解题代码(Java&Python&C++&JS分别实现),详细代码讲解,助你深入学习,深度掌握! 文章目录 一. 题目二.解题思路三.题解代码Python题解代码JAVA题解代码C/C++题解代码JS题解代码四.代码讲解(Ja…

基于YOLOv8的绝缘子检测系统

&#x1f4a1;&#x1f4a1;&#x1f4a1;本文摘要&#xff1a;基于YOLOv8的绝缘子小目标检测&#xff0c;阐述了整个数据制作和训练可视化过程 1.YOLOv8介绍 Ultralytics YOLOv8是Ultralytics公司开发的YOLO目标检测和图像分割模型的最新版本。YOLOv8是一种尖端的、最先进的&a…

kali Linux上安装docker过程记录

安装情况&#xff1a; 直接安装提示错误&#xff01;&#xff01;&#xff01; 安装程序命令&#xff1a; apt install -y docker.io 安装结果提示安装失败&#xff01;&#xff01;&#xff01;看别人安装直接成功到我这怎么失败&#xff01;&#xff01;&#xff01;找原因…

引用,内联函数,auto函数,指针nullptr

一&#xff1a;引用 1.1 该文章的引用是对上一篇引用的进行补充和完善 按理来说&#xff0c;double可以隐式转换为int&#xff0c;那起别名的时候为什么不可以类型转换呢&#xff1f; 那是因为&#xff0c;在类型转换的时候&#xff0c;会创建一个临时变量&#xff0c;让后再…

如何提高小红书笔记的收录率?

在小红书平台上&#xff0c;笔记的收录率是衡量一篇笔记是否受欢迎和有价值的重要因素。为了提高笔记的收录率&#xff0c;有几个关键点需要注意&#xff1a; 1.内容不涉及广告 在发布笔记前要先确保笔记内容不包含任何形式的广告或推广信息。小红书平台对于广告性质的内容有…

资治通鉴读后感之【顺应人性、联盟、创业切入点、领袖魅力】

目录 顺应人性&#xff1a; 联盟&#xff1a; 防蚁穴&#xff1a; 创业者切入点&#xff1a; 组建团队&#xff1a; 顺应人性&#xff1a; 不着急、不害怕、不要脸的精神 兴衰、人性、道德、权谋 优秀的人才&#xff1a;愿和你交流的时候&#xff0c;多交流&#xff0c;…

【React】在React中如何渲染空格

前言 代码中冒号是英文冒号&#xff0c;以便显示空格是否渲染 方式一&#xff1a;使用花括号 function Message () {return (<p>姓名:{" "}张三</p>) }方式二&#xff1a;使用Html实体 function Message () {return (<p>姓名: 张三</p>)…

题目:练习函数调用

题目&#xff1a;练习函数调用 There is no nutrition in the blog content. After reading it, you will not only suffer from malnutrition, but also impotence. The blog content is all parallel goods. Those who are worried about being cheated should leave quickly…

Day41 动态规划 part03

Day41 动态规划 part03 343. 整数拆分 我的思路&#xff1a; 自己写不了一点… 拿代码debug&#xff0c;dp数组&#xff0c;表示正整数n的最大拆分乘积&#xff0c;当n 2的时候才能拆分&#xff08;2 1 1&#xff09;&#xff0c;且dp[2] 1 我们用 i 遍历&#xff0c;记录…

24年大一训练一(东北林业大学)

前言&#xff1a; 周五晚上的训练赛&#xff0c;以后应该每两周都会有一次。 正文&#xff1a; Problem:A矩阵翻转&#xff1a; #include<bits/stdc.h> using namespace std; int a[55][55]; int main(){int n,m;while(cin>>n>>m){for(int i1;i<n;i){for…