第五节:Python的流程控制语句

两种流程控制语句:

  • 条件语句

  • 循环语句

1、条件语句

让程序根据条件有选择性的执行语句。

  • if子句必须有

  • elif 子句可以有0个或多个。

  • else 子句可以有0个或1个,且只能放在if语句的最后。

python 复制代码
if 条件1:
   条件1成立执⾏的代码一
   条件1成⽴执⾏的代码二
   ......
elif 条件2:  # elif 可以没有
   条件2成立执⾏的代码三
   条件2成立执⾏的代码四
   ......
......
else:   # else 也可以没有
   以上条件都不成⽴,执行的代码五
   以上条件都不成⽴,执行的代码六

一、if嵌套

语法:

python 复制代码
if 条件1:
    条件1成立执行的代码
    条件1成立执行的代码
  
    if 条件2:
        条件2成立执行的代码
        条件2成立执行的代码

注意:条件2的if也是处于条件1成立执行的代码的缩进关系内部。

二、三目条件运算

三目运算也叫三元运算: 是为了快速给一个变量赋值,采用简单的条件语句。

语法如下:满足条件的值1 if 条件 else 不满足条件的值2

2、循环语句

可以让一段代码,重复执行。

  • while循环

  • for循环

python 复制代码
# 一、while循环 语法

while 条件:
   条件成⽴重复执行的代码1
   条件成⽴重复执行的代码2
   ......

# 二、for循环 语法
for 临时变量量 in 序列:
   重复执行的代码1
   重复执行的代码2
   ......

一、range函数

用来创建一个生成一系列整数的可迭代对象(也叫整数序列生成器)。语法是:range(开始点,结束点,间隔)

口诀:包头不包尾

二、break和continue

break和continue都是用来控制循环结构的,主要作用是停止循环。

  1. break用于 跳出一个循环体或者完全结束一个循环 ,可以结束其所在的循环。

    • 结束当前整个循环,执行当前循环下边的语句。忽略循环体中任何其它语句

    • 只能跳出一层循环,如果你的循环是嵌套循环,那么你需要按照你嵌套的层次,逐步使用break来跳出。逐 层,逐步跳出

  • continue语句的作用是 跳过本次循环体中剩下尚未执行的语句,立即进行下一次的循环条件判定 ,可以理解为只是中止(跳过)本次循环,接着开始下一次循环。

    • 终止本次循环的执行,即跳过当前这次循环中continue语句后尚未执行的语句,接着进行下一次循环条件的判断。

    • 终止当前的循环过程,但他并不跳出循环,而是继续往下判断循环条件执行语句.他只能结束循环中的一次过程,但不能终止循环继续进行.

注意:break和continue只能用于循环语句中;并且:在嵌套循环中使用时,只对最内层循环有效。

三、循环中的else

循环可以和else配合使用,else下方缩进的代码指的是:当循环正常结束之后要执行的代码。

如果是bresk终止循环的情况。else下方缩进的代码将不执行。

python 复制代码
while 条件:
    条件成⽴,重复执行的代码
else:
    循环正常结束之后要执行的代码
    
for i in 序列:
    重复执行的代码
else:
    循环正常结束之后要执行的代码

3、综合案例:猜数游戏

python 复制代码
print("-" * 50)
print("欢迎来到 老肖 的《猜数游戏》")
print("规则一:系统每次会自动生成一个1~10之间的随机数")
print("规则二:每次游戏最多只能猜三次")
print("规则三:进入游戏或者继续玩,输入:yes或者y")
print("规则三:离开游戏,输入:no或者n")
print("-" * 50)


配套课程请私信。

相关推荐
云和数据.ChenGuang19 分钟前
深入解析 Python 的 dir():从用法到 CPython 源码实现
开发语言·人工智能·python·langchain
荣码3 小时前
长上下文与大文档处理:200页PDF怎么喂给AI,我踩了4个坑
java·python
databook4 小时前
Pandas 与 Polars:语法、性能和资源占用方面的对比
python·数据分析·pandas
威哥爱编程4 小时前
Python 智能体开发实战 10:本地跑得好好的,一并发就崩?把它做成一个能上线的服务
python·agent
威哥爱编程4 小时前
Python 智能体开发实战 09:改了提示词,到底是变好还是变坏?搭一套能打分的离线评测
python·agent
meiying88384 小时前
多快递公司快递单号批量查询接口怎么对接?Python 聚合查询实现
java·大数据·python
Hello_Pyhx5 小时前
Deep-Live-Cam 源码配置思路:环境、模型与执行后端分开排查
python
张张123y5 小时前
后端第十六课:Multi-Agent 多智能体(让多个 Agent 分工协作)
大数据·数据库·人工智能·python·deepseek·dsh·agent 框架
全栈练习生5 小时前
大规模智能体仿真
python·ai
code2cat6 小时前
【随笔】vLLM前缀缓存:相同的开头怎样少算一次
人工智能·python·缓存·vllm