零基础学Python(8)— 流程控制语句(上)

news/2024/7/11 0:43:26 标签: python, 开发语言, YOLO

前言:Hello大家好,我是小哥谈。流程控制语句是编程语言中用于控制程序执行流程的语句,本节课就带大家认识下Python语言中常见的流程控制语句!~🌈  

     目录

🚀1.程序结构

🚀2.最简单的if语句

🚀3.if…else语句

🚀4.if…elif…else语句

🚀5.if语句的嵌套

🚀6.条件表达式

🚀1.程序结构

计算机在解决某个具体问题时,主要有3种情形,分别是顺序执行所有的语句选择执行部分语句循环执行部分语句。程序设计中的3种基本结构为顺序结构选择结构循环结构

这3种结构的执行流程如下图所示:👇

其中,第一幅图是顺序结构的流程图,编写完毕的语句按照编写顺序依次被执行;第二幅图是选择结构的流程图,它主要根据条件语句的结果选择执行不同的语句;第三幅图是循环结构的流程图,它是在一定条件下反复执行某段程序的流程结构,其中,被反复执行的语句称为循环体,决定循环是否终止的判断条件称为循环条件


🚀2.最简单的if语句

Python中使用if保留字来组成选择语句,简单的语法格式如下:

python">if 表达式:
    语句块

其中,表达式可以是一个单纯的布尔值或变量,也可以是比较表达式或逻辑表达式(例如:a > b and a != c),如果表达式为真,则执行“语句块”;如果表达式的值为假,就跳过“语句块”,继续执行后面的语句,这种形式的if语句相当于汉语里的关联词语“如果……就……”,其流程图如下图所示。


🚀3.if…else语句

如果遇到只能二选一的条件,例如,某大学毕业生到知名企业实习期满后留用,现在需要选择Python开发的方向,示意图如下图所示。

Python中提供了if…else语句解决类似问题,其语法格式如下:

python">if 表达式:
    语句块1
else:
    语句块2

使用if…else语句时,表达式可以是一个单纯的布尔值或变量,也可以是比较表达式或逻辑表达式,如果满足条件,则执行if后面的语句块,否则,执行else后面的语句块,这种形式的选择语句相当于汉语里的关联词语“如果……否则……”,其流程图如下图所示。

注意:if…else语句可以使用条件表达式进行简化,如下面的代码:

python">a = -9
if a > 0:
    b = a
else:
    b = -a
print(b)

 可以简写成:

python">a = -9
b = a if a>0 else -a
print(b)

上段代码主要实现求绝对值的功能,如果a > 0,就把a的值赋值给变量b,否则将-a赋值给变量b。使用条件表达式的好处是可以使代码简洁,并且有一个返回值。

注意:在使用else语句时,else一定不可以单独使用,它必须和保留字if一起使用,例如,下面的代码是错误的:

python">else:
    print(number,"不符合条件")

 程序中使用if…else语句时,如果出现if语句多于else语句的情况,那么该else语句将会根据缩进确定该else语句属于哪个if语句。如下面的代码:

python">a = -1
if a >= 0:
    if a > 0:
        print("a大于0")
    else:
        print("a等于0")

上面的语句将不输出任何提示信息,这是因为else语句属于第3行的if语句,所以当a小于0时,else语句将不执行。而如果将上面的代码修改为以下内容:

python">a = -1
if a >= 0:
    if a > 0:
        print("a大于0")
else:
    print("a小于0")

将输出提示信息“a小于0”。此时,else语句和第2行的if语句配套使用。


🚀4.if…elif…else语句

大家平时在网上购物时,通常都有多种付款方式供大家选择,如下图所示。

图中提供了5种付款方式,这时用户就需要从多个选项中选择一个。在开发程序时,如果遇到多选一的情况,则可以使用if…elif…else语句,该语句是一个多分支选择语句,通常表现为“如果满足某种条件,就会进行某种处理,否则,如果满足另一种条件,则执行另一种处理……”。if…elif…else语句的语法格式如下:

python">if 表达式1:
    语句块1
elif 表达式2:
    语句块2
elif 表达式3:
    语句块3
…
else:
    语句块n

使用if…elif…else语句时,表达式可以是一个单纯的布尔值或变量,也可以是比较表达式或逻辑表达式,如果表达式为真,执行语句;而如果表达式为假,则跳过该语句,进行下一个elif的判断,只有在所有表达式都为假的情况下,才会执行else中的语句。if…elif…else语句的流程如下图所示。

注意:if和elif都需要判断表达式的真假,而else则不需要判断;另外,elif和else都必须与if一起使用,不能单独使用。

使用if选择语句时,尽量遵循以下原则:

当使用布尔类型的变量作为判断条件时,假设布尔型变量为flag,较为规范的格式如下:

python">if flag:              # 表示为真
if not flag:         # 表示为假

 不符合规范的格式如下:

python">if flag == True:
if flag == False:

🚀5.if语句的嵌套

前面介绍了3种形式的if选择语句,这3种形式的选择语句之间都可以互相嵌套。

在最简单的if语句中嵌套if…else语句,形式如下:

python">if 表达式1:
    if 表达式2:
        语句块1
    else:
        语句块2

if…else语句中嵌套if…else语句,形式如下:

python">if 表达式1:
    if 表达式2:
        语句块1
    else:
        语句块2
else:
    if 表达式3:
        语句块3
    else:
        语句块4

说明:if选择语句可以有多种嵌套方式,开发程序时,可以根据自身需要选择合适的嵌套方式,但一定要严格控制好不同级别代码块的缩进量。


🚀6.条件表达式

在程序开发时,经常会根据表达式的结果,有条件地进行赋值。例如,要返回两个数中较大的数,可以使用下面的if语句:

python">a = 10
b = 6
if a>b:
    r = a
else:
    r = b

针对上面的代码,可以使用条件表达式进行简化,代码如下:

python">a = 10
b = 6
r = a if a > b else b

使用条件表达式时,先计算中间的条件(a>b),如果结果为True,返回if语句左边的值,否则返回else右边的值。例如上面表达式中r的值为10。

说明:Python中提供的条件表达式,可以根据表达式的结果进行有条件的赋值。


http://www.niftyadmin.cn/n/5370336.html

相关文章

[疑难杂症2024-001] java多线程运行时遇到java.util.ConcurrentModificationException的解决方案

本文由Markdown语法编辑器编辑完成。 1.背景 由于近日在改进一个医学图像的收图服务。之前的版本,我们采用了pynetdicom的服务。 https://pydicom.github.io/pynetdicom/stable/ 它的介绍为: pynetdicom is a pure Python package that implements the DICOM net…

[linux]:匿名管道和命名管道(什么是管道,怎么创建管道(函数),匿名管道和命名管道的区别,代码例子)

目录 一、匿名管道 1.什么是管道?什么是匿名管道? 2.怎么创建匿名管道(函数) 3.匿名管道的4种情况 4.匿名管道有5种特性 5.怎么使用匿名管道?匿名管道有什么用?(例子) 二、命名…

SQL 使用大全

SQL简介 SQL,全称为Structured Query Language,即结构化查询语言,是一种用于管理关系数据库的标准语言。SQL语言包括数据定义语言(DDL),数据操作语言(DML),数据控制语言&…

16:定时器和计数器

定时器和计数器 1、定时器和计数器的介绍2、定时器是如何工作3、寄存器4、51单片机定时器简介(数据手册)5、定时器中的寄存器(数据手册)5.1、TCON(定时器控制寄存器)5.2、TMOD(工作模式寄存器&a…

Leetcode刷题-(11~15)-Java+Python+JavaScript

算法是程序员的基本功,也是各个大厂必考察的重点,让我们一起坚持写算法题吧 遇事不决,可问春风,春风不语,即是本心。 我们在我们能力范围内,做好我们该做的事,然后相信一切都事最好的安排就可…

编曲学习:旋律创作基础概念 和弦进行作曲 和弦外音使用 作曲技巧

旋律创作基础概念 和弦进行作曲 和弦外音使用 作曲技巧https://app8epdhy0u9502.pc.xiaoe-tech.com/live_pc/l_65be1ba7e4b064a83b92a3d7?course_id=course_2XLKtQnQx9GrQHac7OPmHD9tqbv文档https://app8epdhy0u9502.pc.xiaoe-tech.com/p/t_pc/course_pc_detail/camp_pro/cour…

Java微服务学习Day1

文章目录 认识微服务服务拆分及远程调用服务拆分服务远程调用提供者与消费者 Eureka注册中心介绍构建EurekaServer注册user-serviceorder-service完成服务拉取 Ribbon负载均衡介绍原理策略饥饿加载 Nacos注册中心介绍配置分级存储负载均衡环境隔离nacos注册中心原理 认识微服务…

c++之说_13|模板 折叠表达式

折叠表达式 可以通过形参包的的实际参数&#xff08;不是类型&#xff09; 展开式子 这是这里说的几种 实际上并还有一些写法 先介绍这几种吧 #include <cstdio> template<typename T,T... n> struct integer_sequence {T val; }; template<int idx,typenam…