9.Python 条件语句和循环语句
文章目录
- Python 条件语句和循环语句
- 1. **条件语句 (Conditional Statements)**
- 1.1 `if` 语句
- 1.2 `if-else` 语句
- 1.3 `if-elif-else` 语句
- 2. **循环语句 (Loop Statements)**
- 2.1 `while` 循环
- 2.2 `for` 循环
- 2.3 循环嵌套 (Nested Loops)
- 3. **控制循环的语句**
- 3.1 `break` 语句
- 3.2 `continue` 语句
- 3.3 `pass` 语句
- 总结
Python 条件语句和循环语句
Python 提供了多种控制结构,用于根据条件执行代码块或重复执行某些操作。以下是 Python 中常见的条件语句和循环语句的详细介绍和示例。
1. 条件语句 (Conditional Statements)
条件语句允许你根据不同的条件执行不同的代码块。Python 支持 if、elif 和 else 语句。
1.1 if 语句
if 语句用于检查一个条件是否为真,如果条件为真,则执行相应的代码块。
语法:
if condition:# 执行代码块
示例:
x = 10
if x > 5:print("x 大于 5")
1.2 if-else 语句
if-else 语句用于在两个不同的条件下执行不同的代码块。如果条件为真,执行 if 块;否则,执行 else 块。
语法:
if condition:# 条件为真时执行的代码块
else:# 条件为假时执行的代码块
示例:
x = 3
if x > 5:print("x 大于 5")
else:print("x 不大于 5")
1.3 if-elif-else 语句
if-elif-else 语句用于处理多个条件。Python 会依次检查每个 elif 条件,直到找到一个为真的条件并执行相应的代码块。如果没有条件为真,则执行 else 块。
语法:
if condition1:# 条件1为真时执行的代码块
elif condition2:# 条件2为真时执行的代码块
elif condition3:# 条件3为真时执行的代码块
else:# 所有条件都为假时执行的代码块
示例:
x = 7
if x < 5:print("x 小于 5")
elif x == 5:print("x 等于 5")
elif x > 5 and x <= 10:print("x 在 5 和 10 之间")
else:print("x 大于 10")
2. 循环语句 (Loop Statements)
循环语句用于重复执行一段代码,直到满足某个条件为止。Python 提供了两种主要的循环语句:for 循环和 while 循环。
2.1 while 循环
while 循环会在条件为真时重复执行代码块,直到条件变为假为止。
语法:
while condition:# 执行代码块
示例:
count = 0
while count < 5:print(f"当前计数: {count}")count += 1
输出:
当前计数: 0
当前计数: 1
当前计数: 2
当前计数: 3
当前计数: 4
注意: 如果条件永远为真(例如 while True:),则会形成无限循环。你需要使用 break 语句来退出循环。
2.2 for 循环
for 循环用于遍历序列(如列表、元组、字符串等)或其他可迭代对象。它会依次取出序列中的每个元素,并执行相应的代码块。
语法:
for item in iterable:# 执行代码块
示例:
fruits = ['apple', 'banana', 'cherry']
for fruit in fruits:print(fruit)
输出:
apple
banana
cherry
遍历数字范围: 使用 range() 函数可以生成一个数字序列,常用于 for 循环中。
示例:
for i in range(5):print(i)
输出:
0
1
2
3
4
2.3 循环嵌套 (Nested Loops)
你可以将一个循环嵌套在另一个循环内部,形成多层循环。通常用于处理二维数据结构(如矩阵)或需要多次重复的操作。
示例:
for i in range(3):for j in range(2):print(f"i={i}, j={j}")
输出:
i=0, j=0
i=0, j=1
i=1, j=0
i=1, j=1
i=2, j=0
i=2, j=1
3. 控制循环的语句
Python 提供了三种控制循环的语句:break、continue 和 pass。这些语句可以帮助你在循环中实现更复杂的逻辑。
3.1 break 语句
break 语句用于立即终止当前循环,跳出循环体,继续执行循环后的代码。
示例:
for i in range(10):if i == 5:breakprint(i)
输出:
0
1
2
3
4
3.2 continue 语句
continue 语句用于跳过当前循环的剩余部分,直接进入下一次循环迭代。
示例:
for i in range(10):if i % 2 == 0:continueprint(i)
输出:
1
3
5
7
9
3.3 pass 语句
pass 语句是一个空操作,它不会执行任何操作,但可以作为占位符,避免语法错误。常用于定义函数、类或条件语句时,暂时不编写具体的实现代码。
示例:
if True:pass # 这里什么也不做def my_function():pass # 暂时不实现具体功能
总结
通过上述详细的解释,我们介绍了 Python 中的条件语句和循环语句,包括 if、elif、else、while、for、循环嵌套以及 break、continue 和 pass 控制语句。这些控制结构是编写复杂逻辑和重复操作的基础,掌握它们可以帮助你编写更加灵活和高效的 Python 代码。
如果你有任何具体问题或需要进一步的解释,请随时告诉我!
相关文章:
9.Python 条件语句和循环语句
文章目录 Python 条件语句和循环语句1. **条件语句 (Conditional Statements)**1.1 if 语句1.2 if-else 语句1.3 if-elif-else 语句 2. **循环语句 (Loop Statements)**2.1 while 循环2.2 for 循环2.3 循环嵌套 (Nested Loops) 3. **控制循环的语句**3.1 break 语句3.2 continu…...
智能家居控制系统设计
设计智能家居控制系统是一个复杂但有趣的项目,它涉及硬件与软件的集成、网络通信、用户界面设计等多个方面。以下是一个智能家居控制系统的基本设计思路: 1. 需求分析- 功能需求:明确系统需要实现的功能,如灯光控制、空调温度调节…...
Windows系统word插入公式自动编号并交叉引用
一、定义新的多级列表 鼠标单击页面空白处 二、插入域 鼠标单击要插入公式编号的地方 三、交叉引用 鼠标单击要引用公式编号的地方 四、更新编号(域) CtrlA:全选全文 鼠标右键:更新域...
0.基础语法
文章目录 1. 第一个 Python 程序2. Python2.x 和 Python3.x 的差异3. 标识符和保留字符4. 行和缩进5. 多行语句6. 引号7. 注释8. 空行9. 用户输入10. Print 输出11. 代码组12. 命令行参数 Python 基础语法涵盖了从安装和运行 Python 程序到理解语言核心概念的各个方面。以下是基…...
mysql命令行界面(黑框)的登录
文章目录 开启关闭服务报错登录mysql退出mysql数据据database在电脑中的存放位置删除数据库语句 drop注意 cmd用管理员打开 开启关闭服务 报错 我有这个报错,但是使用没什么影响 登录mysql root替换成自己的用户名 退出mysql exit 数据据database在电脑中的…...
【机器学习】解构概率,重构世界:贝叶斯定理与智能世界的暗语
文章目录 条件概率与贝叶斯定理:深入理解机器学习中的概率关系前言一、条件概率与贝叶斯定理1.1 条件概率的定义与公式1.1.1 条件概率的定义1.1.2 条件概率的实例讲解 1.2 条件概率的性质与法则1.2.1 链式法则1.2.2 全概率公式1.2.3 贝叶斯定理的推导 1.3 贝叶斯定理…...
threejs——无人机概念切割效果
主要技术采用着色器的切割渲染,和之前写的风车可视化的文章不同,这次的切割效果是在着色器的基础上实现的,并新增了很多可调节的变量,兄弟们,走曲儿~ 线上演示地址,点击体验 源码下载地址,点击下载 正文 从图中大概可以看出以下信息,一个由线组成的无人机模型,一个由…...
electron学习笔记(一)
1.创建项目 mkdir myelectron npm init npm install --save-dev electron //安装通过以上命令, 我们就有了一个 electron 的项目 之后, 设置主文件入口 , 添加热启动 nodemon 2. nodemon 的使用和配置 要根目录下添加 nodemon.json 文件,配…...
基于Arduino蹲便器的自动清洁系统(论文+源码)
1系统整体设计 经过上述的方案分析,最终确定了Arduino UNO开发板为核心,结合蓝牙模块,舵机,电磁阀,红外传感器,步进电机,舵机等硬件设备来构成整个控制系统,整体框图如图2.1所示。其…...
【JavaWeb后端学习笔记】使用HttpClient发送Http请求
使用HttpClient发送Http请求需要在项目中导入相关依赖: <dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId><version>4.5.13</version> </dependency>1、 HttpClient…...
2024告别培训班 数通、安全、云计算、云服务、存储、软考等1000G资源分享
大类有:软考初级 软考中级 软考高级 华为认证 华三认证: 软考初级: 信息处理技术员 程序员 网络管理员 软考中级: 信息安全工程师 信息系统监理师 信息系统管理工程师 嵌入式系统设计时 数据库系统工程师 电子商务设…...
【C++】- 掌握STL List类:带你探索双向链表的魅力
文章目录 前言:一.list的介绍及使用1. list的介绍2. list的使用2.1 list的构造2.2 list iterator的使用2.3 list capacity2.4 list element access2.5 list modifiers2.6 list的迭代器失效 二.list的模拟实现1. list的节点2. list的成员变量3.list迭代器相关问题3.1…...
基于streamlit搭简易前端页面
前端小白第一次用streamlit搭简易页面,记录一下。 一些tips 每次与页面进行交互,如点击按钮、上传文件等,streamlit就会重新运行整个页面的所有代码。如果在页面渲染前需要对上传文件做很复杂的操作,重新运行所有代码就会重复这…...
Harmony Next开发通过bindSheet绑定半模态窗口
示例概述 Harmony Next开发通过bindSheet绑定半模态窗口 知识点 半模态窗口父子组件传值 组件 LoginComponent Component struct LoginComponent {// Prop 父子单项绑定值Prop message:string // Link 父子双向绑定值Link userName:stringLink password:stringLink isSh…...
YOLOv11改进,YOLOv11添加DLKA-Attention可变形大核注意力,WACV2024 ,二次创新C3k2结构
摘要 作者引入了一种称为可变形大核注意力 (D-LKA Attention) 的新方法来增强医学图像分割。这种方法使用大型卷积内核有效地捕获体积上下文,避免了过多的计算需求。D-LKA Attention 还受益于可变形卷积,以适应不同的数据模式。 理论介绍 大核卷积(Large Kernel Convolu…...
【51单片机】矩阵按键快速上手
51单片机矩阵按键是一种在单片机应用系统中广泛使用的按键排列方式,特别适用于需要多个按键但I/O口资源有限的情况。以下是对51单片机矩阵按键的详细介绍: 一、矩阵按键的基本概念 定义:矩阵按键,又称行列键盘,是…...
一文说清:git reset HEAD原理
1 使用add命令,将文件添加到暂存区 命令如下: 对比结果如下: 2 使用reset HEAD命令 如下: 结果对比如下: 忽略logs目录下的内容。 发现只是修改了index暂存区的内容。删掉了原来添加到暂存区的对象ID&#x…...
【前端面试题】书、定位问题、困难
看过什么书 《JavaScript 高级程序设计(第 4 版)》(作者:Matt Frisbie) 这是一本深入学习 JavaScript 语言的经典书籍。它详细地涵盖了 JavaScript 的高级特性,包括原型链、闭包、异步编程等复杂概念。以闭…...
WADesk 升级 Webpack5 一些技术细节认识5和4的区别在哪里
背景 升级过程中发现有很多新的知识点,虽然未来可能永远都不会再遇到,但是仍然是一次学习的好机会,可以让自己知道,打包软件的进化之路,和原来 Webpack 4 版本的差异在哪里。 移除的依赖记录 babel/register: 在 Nod…...
学习 Dockerfile 常用指令
学习 Dockerfile 常用指令 在构建 Docker 镜像时,Dockerfile 文件是一份至关重要的配置文件,它定义了构建镜像的所有步骤。通过在 Dockerfile 中使用不同的指令(命令),我们可以控制镜像的构建过程、设置环境、指定执行…...
如何快速掌握串口数据可视化:开源SerialPlot工具的完整指南
如何快速掌握串口数据可视化:开源SerialPlot工具的完整指南 【免费下载链接】serialplot Small and simple software for plotting data from serial port in realtime. 项目地址: https://gitcode.com/gh_mirrors/se/serialplot 你是否曾被串口终端中源源不…...
SpinalHDL流水线设计:从概念到实战的高效硬件开发
1. 项目概述:从“硬连线”到“流水线”的思维跃迁在数字电路设计领域,尤其是使用高级硬件描述语言(HDL)进行复杂系统开发时,性能瓶颈往往不在于逻辑功能的实现,而在于如何高效地组织数据流,让电…...
如何找到最适合你的私有化IM?
跳出公有云的舒适区,决心搭建私有化IM,并不是一件能一蹴而就的事。市面上打着私有化旗号的软件鱼龙混杂,有的安装环境要求极高,有的功能华而不实。如何在复杂的选型迷雾中,找到最适合组织基因的那一款?你可…...
别再傻傻只用insmod了!Linux驱动加载,用modprobe才是真省心(附依赖问题解决全流程)
别再傻傻只用insmod了!Linux驱动加载,用modprobe才是真省心(附依赖问题解决全流程) 你是否曾在深夜调试Linux驱动时,被insmod报出的"Unknown symbol"错误折磨到崩溃?明明已经编译好了驱动模块&am…...
技术债的“利息”怎么算?一个让非技术领导也能理解的比喻
一、从“信用卡账单”到“技术债利息”:一个通俗的起点软件测试从业者对“技术债”这个词绝不陌生,每次面对历史代码里的“隐秘角落”,看着新功能开发时层出不穷的连锁Bug,我们都能直观感受到技术债带来的拖累。但要向非技术领导解…...
scikit-learn自定义Pipeline:从接口契约到业务落地的完整实践
1. 项目概述:为什么需要自己动手定制 scikit-learn 的模型与流水线在真实的数据科学项目里,你几乎不可能靠from sklearn.ensemble import RandomForestClassifier一行代码就搞定所有事。我带过十几个工业级建模项目,从电商价格预测到医疗设备…...
SynthID技术解析:AI生成图像的隐形数字身份证
1. 项目概述:当“眼见”不再为实,我们靠什么守住真实?去年冬天,我帮一个做教育短视频的朋友处理一批AI生成的插画素材。他用的是主流文生图工具,效果确实惊艳——古风课堂场景细腻得能看清宣纸纹理,学生表情…...
振弦采集模块精度检测实战:从原理到环境测试全解析
1. 项目概述与核心目标在工程监测领域,振弦式传感器因其长期稳定性好、抗干扰能力强、信号传输距离远等优点,被广泛应用于桥梁、大坝、隧道、边坡等结构物的应力、应变、位移和压力监测。而VM系列振弦采集模块,作为连接传感器与数据采集系统的…...
Midjourney大画幅风格实战手册(从失效黑边到完美展陈:2023全球TOP 50商业项目验证的7大避坑节点)
更多请点击: https://kaifayun.com 第一章:Midjourney大画幅风格的本质解构与视觉范式跃迁 大画幅风格并非单纯指图像物理尺寸的放大,而是Midjourney通过隐式参数空间重构所催生的一种高密度视觉语义范式——它融合了胶片颗粒质感、景深压缩…...
Internet Archive Downloader终极指南:三步永久保存数字图书馆书籍
Internet Archive Downloader终极指南:三步永久保存数字图书馆书籍 【免费下载链接】internet_archive_downloader A chrome/firefox extension that download books from Internet Archive(archive.org) and HathiTrust Digital Library (hathitrust.org) 项目地…...
