Python 教程(五):理解条件语句和循环结构

目录

    • 专栏列表
    • 前言
    • 条件语句
      • if 语句
      • elif 语句
      • else 语句
      • 示例
    • 循环结构
      • for 循环
      • while 循环
      • break 和 continue
      • 实例演示
    • 循环控制语句
      • range 函数
      • enumerate 函数
    • 模式匹配
    • 总结

在前四篇教程中,我们学习了 Python 的基本语法和数据结构。本篇教程,我们将深入探讨 Python 中的条件语句和循环结构。这些控制流语句是编程中不可或缺的部分,它们允许我们根据不同的条件执行不同的代码块,或者重复执行某些操作。

专栏列表

  • Python教程(一):环境搭建及PyCharm安装
  • Python 教程(二):语法与数据结构
  • Python 教程(三):字符串特性大全
  • Python 教程(四):Python运算符合集
  • Python 教程(五):理解条件语句和循环结构

在这里插入图片描述

正文开始如果觉得文章对您有帮助,请帮我三连+订阅,谢谢💖💖💖


前言

在编程中,控制流语句是实现逻辑判断和重复操作的关键。Python 提供了丰富的控制流语句,包括条件语句(如 ifelifelse)和循环结构(如 forwhile)。

条件语句

条件语句允许程序根据不同的条件执行不同的代码块。在 Python 中,主要的条件语句有 ifelifelse

语法示例:

if <条件判断1>:<执行1>
elif <条件判断2>:<执行2>
elif <条件判断3>:<执行3>
else:<执行4>

if 语句

if 语句用于判断一个条件是否为真(True),如果是,则执行相应的代码块。

x = 5
if x > 0:print("x 是一个正数")

elif 语句

elifelse if 的缩写,用于在多个条件之间进行选择。如果前面的 if 条件不满足,程序会继续检查 elif 条件。

x = 0
if x > 0:print("x 是一个正数")
elif x < 0:print("x 是一个负数")

else 语句

else 语句用于处理所有未满足的 ifelif 条件的情况。

x = 0
if x > 0:print("x 是一个正数")
elif x < 0:print("x 是一个负数")
else:print("x 等于 0")

示例

下面是一个使用条件语句判断用户输入的数字类型的示例:

input() 函数是等待用户输入,例如: x = input()将用户输出的输入赋值给x变量,下面的 input 输入将被 float 转成浮点数,赋值给num

num = float(input("请输入一个数字:"))
if num > 0:print("这是一个正数")
elif num < 0:print("这是一个负数")
else:print("这是一个零")

循环结构

循环结构允许我们重复执行一段代码,直到满足某个条件。Python 中主要的循环结构有 for 循环和 while 循环。

for 循环

for 循环用于遍历序列(如列表、元组、字典等)或迭代其他可迭代对象。

fruits = ["apple", "banana", "cherry"]
for fruit in fruits:print(fruit)

在这里插入图片描述

while 循环

while 循环会一直执行,直到条件不再为真。

count = 1
while count <= 5:print(count)count += 1 # 等于 count = count + 1

break 和 continue

  • break 语句用于立即退出循环。
  • continue 语句用于跳过当前循环的剩余部分,并开始下一次循环。
for i in range(10):if i == 5: # 循环到5 就终止了breakprint(i)
for i in range(10):if i % 2 == 0: # 偶数就跳过,print就只会打印计数的数字continueprint(i)

在这里插入图片描述

实例演示

下面是一个使用 for 循环做一个 1 到 100 的数字求和示例:

range() 函数介绍:

  • range(101):就可以生成0---100的整数序列
  • range(10,20):就可以生成10---19的整数序列
sum = 0
x = range(1,101)for i in x:sum = sum + i
print(sum) # 5050

循环控制语句

range 函数

range() 函数在循环中非常有用,它可以生成一个整数序列。

for i in range(5):print(i)

输出:

0
1
2
3
4

enumerate 函数

enumerate() 函数可以在遍历序列时同时获取索引和元素。

fruits = ["apple", "banana", "cherry"]
for index, fruit in enumerate(fruits):print(index, fruit)

输出:

0 apple
1 banana
2 cherry

模式匹配

总结

通过本篇教程,我们学习了 Python 中的条件语句和循环结构。掌握这些控制流语句对于编写更复杂、更灵活的程序至关重要。在实际编程中,合理使用这些语句可以使代码更加简洁和高效。

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

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

相关文章

git sendemail使用

教程参考&#xff1a; git-send-email - 以电子邮件形式发送补丁集 1、安装git-email 2、配置 SMTP 服务器 git config --global sendemail.smtpserver smtp.163.com git config --global sendemail.smtpserverport 465 git config --global sendemail.smtpuser xxxxxx163.c…

【故障排查】Docker启动Nacos报错:No DataSource set 问题解决

Nacos报错内容 Nacos Server did not start because dumpservice bean construction failure : No DataSource set原因分析 Nacos 配置的是单机模式&#xff0c;使用mysql 进行存储配置文件&#xff0c;Nacos的启动脚本已经配置了MySQL的连接方式&#xff0c;根据错误提示&a…

大话成像公众号文章阅读学习(二)--- 下一代 AI-ISP会更好

系列文章目录 大话成像公众号文章阅读学习&#xff08;一&#xff09;---- 索尼Alpha 9 III 大话成像公众号文章阅读学习&#xff08;二&#xff09;— 下一代 AI-ISP会更好 文章目录 系列文章目录前言一、AI-ISP1.1 定义与工作原理1.2 应用场景 二、展望总结 前言 这篇是 下…

AWS-Lambda的使用

介绍 Lambda 是一种无服务器(Serverless), 而且设计成事件驱动的计算服务器. 简单来说, 你可以将你的 code 上传, 当有事件产生(例如cronjob , 或者S3有新的文件被上传上來) , 你的code 就会在瞬间(零点几秒以內)被叫起來执行. 由于你不用管 Server如何维护, 或者自动扩展之类…

【Android】安卓四大组件之广播知识总结

文章目录 动态注册使用BroadcastReceiver监听Intent广播注册Broadcast Receiver 静态注册自定义广播标准广播发送广播定义广播接收器注册广播接收器 有序广播修改发送方法定义第二个广播接收器注册广播接收器广播截断 使用本地广播实践-强制下线使用ActivityCollector管理所有活…

微信答题小程序产品研发-UI界面设计

高保真原型虽然已经很接近产品形态了&#xff0c;但毕竟还不能够直接交付给开发。这时就需要UI设计师依据之前的原型设计&#xff0c;进一步细化和实现界面的视觉元素&#xff0c;包括整体视觉风格、颜色、字体、图标、按钮以及交互细节优化等。 UI设计不仅关系到用户的直观感…

Scrapy 爬取旅游景点相关数据(四)

本节内容主要为&#xff1a; &#xff08;1&#xff09;创建数据库 &#xff08;2&#xff09;创建数据库表 &#xff08;3&#xff09;爬取数据进MYSQL库 1 新建数据库 使用MYSQL数据库存储数据&#xff0c;创建一个新的数据库 create database scrapy_demo;2 新建数据表 CR…

tensorflow2(快速入门)

版本问题 导包 import tensorflow as tf 加载数据 加载并准备 MNIST 数据集。将样本数据从整数转换为浮点数&#xff1a; mnist tf.keras.datasets.mnist (x_train, y_train), (x_test, y_test) mnist.load_data() x_train, x_test x_train / 255.0, x_test / 255.0 搭…

Redis:AOF持久化

1. 简介 以日志的形式来记录每个写操作&#xff0c;将redis执行的每个写操作记录下来&#xff08;读操作不记录&#xff09;&#xff0c;只需追加文件但不可以改写文件&#xff0c;redis启动之初会重新构建数据&#xff0c;即redis重启后会将日志中的所有写指令重新执行一遍以达…

WordPress主题追格企业官网主题免费开源版V1.1.6

追格企业官网主题免费开源版由追格开发的一款开源wordpress主题&#xff0c;专为企业建站和追格企业官网小程序&#xff08;开源版&#xff09;PC配套而设计&#xff0c;功能集新闻动态、留言反馈、产品与服务、公司简介、联系我们等模块。

Transformer,注意力机制。

&#x1f3c6;本文收录于《CSDN问答解惑-专业版》专栏&#xff0c;主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案&#xff0c;希望能够助你一臂之力&#xff0c;帮你早日登顶实现财富自由&#x1f680;&#xff1b;同时&#xff0c;欢迎大家关注&&收…

QT总结——图标显示坑

最近写代码遇到一个神仙大坑&#xff0c;我都怀疑我软件是不是坏了&#xff0c;这里记录一下。 写qt工程的时候我们一般会设置图标&#xff0c;这个图标是窗体的图标同时也是任务栏的图标&#xff0c;但是我发现生成的exe没有图标&#xff0c;这个时候就想着给他加一个图标&…

前端开发知识(一)-html

1.前端开发需掌握的内容&#xff1a; 2.前端开发的三剑客&#xff1a;html、css、javascript Vue可以简化JavaScpript流程。 Element&#xff08;饿了么开发的&#xff09; &#xff1a;前端组件库。 Ngix&#xff1a;前端服务器。 3.前端开发工具&#xff1a;vscode 1)按…

染色封锁问题

我们只要知道我们一个联通块中的点要么没有被河蟹占着&#xff0c;要么就要有河蟹&#xff0c;这不就是染色问题吗&#xff0c;我们只要取其中的最小值加到我们答案中就行&#xff0c;如果相邻的边颜色一样&#xff0c;就无解 #define _CRT_SECURE_NO_WARNINGS #include<bit…

visual studio性能探测器使用案列

visual studio性能探测器使用案列 在visual studio中&#xff0c;我们可以使用自带的工具对项目进行性能探测&#xff0c;具体如下 1.选择性能探查器 Vs2022/Vs2019中打开方式&#xff1a; Vs2017打开方式&#xff1a; 注意最好将解决方案配置为&#xff1a;Release Debu…

大语言模型系列-Transformer:深入探索与未来展望

大家好&#xff0c;我是一名测试开发工程师&#xff0c;已经开源一套【自动化测试框架】和【测试管理平台】&#xff0c;欢迎大家联系我&#xff0c;一起【分享测试知识&#xff0c;交流测试技术】 Transformer模型自其问世以来&#xff0c;便迅速在自然语言处理领域崭露头角&a…

声音克隆一键本地化部署 GPT-SoVITS

文章目录 GPT-SoVITS 介绍1:GPT-SoVITS安装2:GPT-SoVITS使用2.1 人声伴奏分离,去混响去延时工具2.2 语音切分工具2.3 语音降噪工具2.4 中文批量离线ASR工具2.5 语音文本校对标注工具GPT-SoVITS 介绍 GPT-SoVITS: 是一个由RVC变声器创始人“花儿不哭”推出的免费开源项目。…

Windows系统安全加固方案:快速上手系统加固指南 (下)

这里写目录标题 一、概述二、IP协议安全配置启用SYN攻击保护 三、文件权限3.1 关闭默认共享3.2 查看共享文件夹权限3.3 删除默认共享 四、服务安全4.1禁用TCP/IP 上的NetBIOS4.2 ### 禁用不必要的服务 五、安全选项5.1启动安全选项5.2禁用未登录前关机 六、其他安全配置**6.1防…

项目都做完了,领导要求国际化????--JAVA后端篇

springboot项目国际化相信各位小伙伴都会&#xff0c;很简单&#xff0c;但是怎么项目都做完了&#xff0c;领导却要求国际化文件就很头疼了 国际化的SpringBoot代码&#xff1a; 第一步&#xff1a;创建工具类 /*** 获取i18n资源文件** author bims*/ public class Message…

freesql简单使用操作mysql数据库

参考&#xff1a;freesql中文官网指南 | FreeSql 官方文档 这两天准备做一个测试程序&#xff0c;往一个系统的数据表插入一批模拟设备数据&#xff0c;然后还要模拟设备终端发送数据包&#xff0c;看看系统的承压能力。 因为系统使用的第三方框架中用到了freesql&#xff0c…