【Python】06、流程控制语句

server/2025/3/13 19:06:03/

文章目录

  • 1.条件判断语句
    • 1.1 if 语句
    • 2. input 函数
    • 3.if-else 语句
    • 4.if-elif-else 语句
  • 2.循环语句
    • 2.1 while语句
    • 2.2 while语句练习:
    • 2.3 循环嵌套
    • 2.4 break和continue

通过流程控制语句,可以改变程序的执行顺序,也可以让指定程序反复执行多次。
流程控制语句分类:

  • 条件判断语句
  • 循环语句

1.条件判断语句

1.1 if 语句

if语句是常见的条件判断语句

语法格式:if 条件表达式 :语句
默认情况下,if语句只会控制紧随其后的那条语句,
如果希望控制多条语句,可以使用代码块(即在冒号后另起一行,带有一个缩进)

代码块

执行流程:if语句在执行时,先对条件表达式进行求值判断,
如果为True,则执行if后的语句,如果为False,则不执行

注意
在if的条件表达式中可以使用逻辑运算符连接多个条件

缩进的方式

  1. 一种使用Tab键,一种使用空格(4个)
  2. Python的官方文档中推荐使用空格来缩进
  3. Python代码中使用的缩进方式必须统一

为了统一缩进方式,可以在sublime中设置按Tab键时生成4个空格
设置步骤:
首选项-设置,在弹出的文档中搜索 translate_tabs_to_spaces,将这个值设置为true

2. input 函数

该函数用来获取用户的输入

  1. input()函数调用后,程序会立即暂停,等待用户输入。用户输入完成后,点击回车程序才会继续执行
  2. input函数中可以设置一个字符串参数,这个字符串将会作为提示文字显示
  3. 用户输入完成后,输入的内容会以返回值的形式返回

在这里插入图片描述
在这里插入图片描述

注意: input的返回值是一个字符串,如果输入的是数字类型,接收的时候需要做类型转换

3.if-else 语句

语法结构:if-else 条件表达式:

python">if 条件表达式 :代码块
else : 代码块

eg:
在这里插入图片描述
在这里插入图片描述

4.if-elif-else 语句

多条件判断语句,语法结构如下:

python">if 条件表达式 : 代码块
elif 条件表达式 : 代码块
elif 条件表达式 : 代码块...
else : 代码块

代码执行流程:

if-elif-else 语句在执行时,会自上而下一次对条件表达式进行求值判断,

  • 如果表达式的结果为True,则执行当前代码块,然后语句结束
  • 如果表达式结果为False,则继续向下判断,直到找到True为止
  • 如果所有的表达式都是False,则执行else后的代码块

if-elif-else语句只有一个代码块会被执行

eg:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.循环语句

循环语句可以指定的代码块重复指定的次数,循环语句分为:

  • while循环
  • for循环

2.1 while语句

语法结构

python"> while 条件表达式 : 代码块

执行流程:

  • while语句在执行时,会先对while后的条件表达式进行求值判断,
  • 如果判断结果为True,则执行循环体(代码块)
  • 循环体执行完毕,继续对条件表达式进行求值判断,以此类推,直到判断结果为False,则循环终止
  • 如果循环有对应的else,则执行else后的代码块
  • 循环三要素
  1. 初始化表达式,通过初始化表达式初始化一个变量
  2. 条件表达式,用来设置循环执行的条件
  3. 更新表达式,修改初始化变量的值

eg:

python"># 1.初始化表达式
i = 0
# 2.条件表达式,设置循环执行条件
while i < 10 :print(i)# 3.更新表达式,修改初始化值i += 1

执行结果:

python">0
1
2
3
4
5
6
7
8
9***Repl Closed***

2.2 while语句练习:

  1. 求100以内所有奇数的和:
python">i= 1
res = 0while i < 100 :res += ii += 2print('100以内奇数和=',res)

结果:

python">100以内奇数和= 2500***Repl Closed***
  1. 获取1000以内的水仙花数
python">i = 100while i < 1000 :# 百位数a = i // 100# 十位数b = (i - a * 100) // 10# 个位数c = i % 10# 执行判断if a ** 3 + b ** 3 + c ** 3 == i :print(i)i += 1

运行结果:

python">153
370
371
407***Repl Closed***

2.3 循环嵌套

循环嵌套时,外层循环每执行一次,内层循环就要执行一圈

python">i = 0while i < 5 : j = 0while  j < i + 1 : print('*',end='')j += 1print()i += 1# 结果
*
**
***
****
********Repl Closed***

打印乘法表:

python">user_input = int(input('请输入乘法表大小:'))if user_input > 0 : # 表示行i = 1#表示列# j = 1while i < user_input : j = 1while j <= i : print(f'{j}*{i}={j * i}',end=' ')j += 1print()i += 1# 结果:请输入乘法表大小:10
1*1=1 
1*2=2 2*2=4 
1*3=3 2*3=6 3*3=9 
1*4=4 2*4=8 3*4=12 4*4=16 
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25 
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36 
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49 
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64 
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81 ***Repl Closed***

2.4 break和continue

  • break可以用来立即退出当前循环(退出内层循环,如果外层有循环会继续执行)
  • continue 表示跳过当次,执行下一次循环

break和continue都是针对距离最近的循环起作用

  • pass

pass在Python中用来在判断或循环语句中占位的


http://www.ppmy.cn/server/174698.html

相关文章

计算机网络——路由器

一、路由器的作用 路由器&#xff08;Router&#xff09;是网络层&#xff08;OSI第三层&#xff09;的核心设备&#xff0c;承担着跨网络通信的关键任务&#xff0c;主要功能包括&#xff1a; 跨网络数据转发 基于IP地址&#xff0c;在不同网络间选择最优路径传输数据包&…

数字IC后端项目典型问题(2025.03.10数字后端项目问题记录)

小编发现今天广大学员发过来的问题都比较好&#xff0c;立即一顿输出分享给大家&#xff08;每天都有好多种类的数字后端问题&#xff09;。后续可能会经常通过这种方式来做分享。其实很多问题都是实际后端项目中经常遇到的典型问题。希望通过这种方式的分享能够帮助到更多需要…

详细介绍ListView_DeleteItem

书籍&#xff1a;《Visual C 2017从入门到精通》的2.3.8 Win32控件编程 环境&#xff1a;visual studio 2022 内容&#xff1a;【例2.27】支持按Delete键删除某行的列表视图控件 说明&#xff1a;以下内容大部分来自腾讯元宝。 以下是关于**ListView_DeleteItem**函数的详细…

Android Compose: `remember` 与 `ViewModel` 保存数据的优缺点对比

在开发 Android 应用时&#xff0c;管理 UI 状态是一个不可避免的话题。Jetpack Compose 提供了两种常见的方式来保存和管理数据&#xff1a;remember 和 ViewModel。它们各有优缺点&#xff0c;适用于不同的场景。 本文将详细对比这两者在保存数据时的优缺点&#xff0c;帮助…

前端非技术性场景面试题

1.如果给你主导一个项目你会怎么展开工作 我的回答&#xff1a; 当我拿到一个项目的时候我首先会进行需求的收集和分析&#xff0c;给出项目的概要设计&#xff0c;同时根据目前的需求做可行性性分析&#xff0c;做的是技术的可行性分析&#xff0c;可行性分析做完之后&#x…

双周报Vol.67: 模式匹配支持守卫、LLVM 后端发布、支持 Attribute 语法...多项核心技术更新!

2025-03-10 语言更新 模式匹配支持守卫&#xff08;Pattern Guard&#xff09; 模式守卫可以通过在模式后追加 if ... 的语法结构来指定。有模式守卫的分支只有在被模式匹配的值满足对应模式&#xff0c;并且模式守卫为真的情况下才会执行。如果模式守卫为假&#xff0c;则会…

【贪心算法】柠檬水找零

1.题目解析 860. 柠檬水找零 - 力扣&#xff08;LeetCode&#xff09; 2.讲解算法原理 分情况讨论 5---》直接收下 10---》找五元&#xff0c;收下 20----》105△ ----》555 由于5元更有用&#xff0c;则尽可能保留5元 3.代码 class Solution {public boolean lemonadeCh…

Python——计算机网络

一.ip 1.ip的定义 IP是“Internet Protocol”的缩写&#xff0c;即“互联网协议”。它是用于计算机网络通信的基础协议之一&#xff0c;属于TCP/IP协议族中的网络层协议。IP协议的主要功能是负责将数据包从源主机传输到目标主机&#xff0c;并确保数据能够在复杂的网络环境中正…