【新人系列】Python 入门(十一):控制结构
✍ 个人博客:https://blog.csdn.net/Newin2020?type=blog
📝 专栏地址:https://blog.csdn.net/newin2020/category_12801353.html
📣 专栏定位:为 0 基础刚入门 Python 的小伙伴提供详细的讲解,也欢迎大佬们一起交流~
📚 专栏简介:在这个专栏,我将带着大家从 0 开始入门 Python 的学习。在这个 Python 的新人系列专栏下,将会总结 Python 入门基础的一些知识点,方便大家快速入门学习~
❤️ 如果有收获的话,欢迎点赞 👍 收藏 📁 关注,您的支持就是我创作的最大动力 💪
控制结构就是控制程序执行顺序的结构,而 Python 有三大控制结构,分别是顺序结构、分支结构(选择结构)以及循环结构。

1. 分支结构
基本语法
分支结构又称为选择结构,程序代码根据判断条件,选择执行特定的代码。如果条件为真,程序执行一部分代码。否则执行另一部分代码。在 Python 语言中,选择军结构的语法使用关键字 if、elif、else 来表示。
常用的语法有如下几种:
if
if...else
if...elif...else
if...elif...elif...else
if 嵌套
举个例子,下面判断 requested_toppings 列表是否为空
requested_toppings = []
if requested_toppings:print('OK')
else:print('Are you sure you want a plain pizza?') # 将执行这行代码
三目运算符
如果一些判断条件比较简单,则可以通过三目运算符来精简代码,例如下面两段代码判断的条件都是一样的。
score = 80
# 普通的if else语句
if score > 80:level="A"
else:level="C"# 三目运算符方法
level = "A" if score > 80 else "C"
2. 循环结构
循环结构是使用最多的一种结构,循环结构是指满足一定的的条件下,重复执行某段代码的一种编码结构,Python 的循环结构中,常见的循环结构是 for 循环和 while 循环。
2.1 for 循环
Python for 循环可以遍历任何序列的项目,经常与字符串、列表、字典等数据结构一起使用。
基本语法
for 循环的语法格式如下:
for iterating_var in sequence:statements(s)
来看几个实际的案例。
# 字符串遍历 - 打印字符串中的每一个字符
str_data = 'hello world'
for str_d in str_data:print(str_d)# 列表遍历 - 打印列表中的每一个元素
list1 = ['C', 'C++', 'JAVA']
for els in list1:print(els)
enumerate( )
如果想要获取到索引值的话,可以使用 enumerate 函数同时获取到索引和元素值。
for index, value in enumerate(list1):print(index, value)
2.2 range 函数
我们可以不自己定义列表,而是通过 range 直接帮我们生成一个数值列表,并且可以用于 for 循环的遍历。
基本语法
range(1, 5) 会得到 1, 2, 3, 4 但没有 5,右边数值不会包含进去。也可以只指定一个参数,这样它将从 0 开始。例如,range(6) 会返回数 0~5。
for value in range(1,5):print(value)
指定步长
上面可以通过 list( ) 将 range( ) 的结果直接转换为列表。
range( ) 的第一个值代表起始值,第二个值代表终值,第三个值代表步长。
n = list(range(2,11,2))
print(n) # [2, 4, 6, 8, 10]
列表解析
squares = [value**2 for value in range(1,11)]
print(squares) # [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
2.3 while 循环
基本语法
Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段序,以处理需要重复处理的相同任务。
其基本形式为:
while 判断条件(condition):执行语句(statements)......
while 循环不需要知道循环的次数,即无限循环,直到条件不满满足为止。
break 与 continue 语句
两者的作用:
- break 语句是立即退出 while 循环,不再运行循环中余下的代确码,也不管条件判断的结果是否为真。
- continue 语句是结束本次循环,返回到 while 语句开始的位置,接着条件判断。如果为真,程序接着执行,否则退出。
两者的区别:
- continue 语句跳出本次循环,只跳过本次循环 continue 后的语句。
- break 语句立即跳出整个循环体,循环体中未执行的循环将不会执行。
相关文章:
【新人系列】Python 入门(十一):控制结构
✍ 个人博客:https://blog.csdn.net/Newin2020?typeblog 📝 专栏地址:https://blog.csdn.net/newin2020/category_12801353.html 📣 专栏定位:为 0 基础刚入门 Python 的小伙伴提供详细的讲解,也欢迎大佬们…...
群核科技首次公开“双核技术引擎”,发布多模态CAD大模型
11月20日,群核科技在杭州举办了第九届酷科技峰会。现场,群核科技首次正式介绍其技术底层核心:基于GPU高性能计算的物理世界模拟器。并对外公开了两大技术引擎:群核启真(渲染)引擎和群核矩阵(CAD…...
【AI大模型引领变革】探索AI如何重塑软件开发流程与未来趋势
文章目录 每日一句正能量前言流程与模式介绍【传统软件开发 VS AI参与的软件开发】一、传统软件开发流程与模式二、AI参与的软件开发流程与模式三、AI带来的不同之处 结论 AI在软件开发流程中的优势、挑战及应对策略AI在软件开发流程中的优势面临的挑战及应对策略 结论 后记 每…...
linux 常用命令指南(存储分区、存储挂载、docker迁移)
前言:由于目前机器存储空间不够,所以‘斥巨资’加了一块2T的机械硬盘,下面是对linux扩容的一系列操作,包含了磁盘空间的创建、删除;存储挂载;docker迁移;anaconda3迁移等。 一、存储分区 1.1 …...
用pyspark把kafka主题数据经过etl导入另一个主题中的有关报错
首先看一下我们的示例代码 import os from pyspark.sql import SparkSession import pyspark.sql.functions as F """ ------------------------------------------Description : TODO:SourceFile : etl_stream_kafkaAuthor : zxxDate : 2024/11/…...
Redis的过期删除策略和内存淘汰机制以及如何保证双写的一致性
Redis的过期删除策略和内存淘汰机制以及如何保证双写的一致性 过期删除策略内存淘汰机制怎么保证redis双写的一致性?更新策略先删除缓存后更新数据库先更新数据库后删除缓存如何选择?如何保证先更新数据库后删除缓存的线程安全问题? 过期删除策略 为了…...
异常处理:import cv2时候报错No module named ‘numpy.core.multiarray‘
问题描述 执行一个将视频变成二值视频输出时候,报错。No module named numpy.core.multiarray,因为应安装过了numpy,所以比较不解。试了卸载numpy和重新安装numpy多次操作,也进行了numpy升级的操作,但是都没有用。 解…...
C++手写PCD文件
前言 一般pcd读写只需要调pcl库接口,直接用pcl的结构写就好了 这里是不依赖pcl库的写入方法 主要是开头写一个header 注意字段大小,类型不要写错 结构定义 写入点需要与header中定义一致 这里用的RoboSense的结构写demo 加了个1字节对齐 stru…...
优选算法(双指针)
1.双指针介绍 双指针算法是一种常用的算法思想,特别适用于处理涉及阵列、链表或字符串等线性数据结构的问题。通过操作两个一个指针来进行导航或操作数据结构,双指针可以最大程度优化解决方案的效率。提高效率并减少空间复杂度。 在Java中使用双指针的核…...
【保姆级】Mac上IDEA卡顿优化
保姆级操作,跟着操作即可~~~ 优化内存 在你的应用程序中,找到你的idea 按住control键+单击 然后点击“显示包内容” </...
python实战案例----使用 PyQt5 构建简单的 HTTP 接口测试工具
python实战案例----使用 PyQt5 构建简单的 HTTP 接口测试工具 文章目录 python实战案例----使用 PyQt5 构建简单的 HTTP 接口测试工具项目背景技术栈用户界面核心功能实现结果展示完整代码总结 在现代软件开发中,测试接口的有效性与响应情况变得尤为重要。本文将指导…...
pytest 接口串联场景
在编写接口测试时,如果有多个接口需要串联在一起调用,并且这些接口共同构成了一个业务场景,通常可以使用以下几种方法来组织代码,使其更具可读性和维护性。以下是一些规范的建议: 1. 使用 pytest 的 fixture 来管理接…...
Springboot项目搭建(2)-用户详细信息查询
1. 提要信息 1.1 java四类八种 在Java中,四类指的是Java中的基本数据类型和引用数据类型: 基本数据类型:Java提供了八种基本数据类型,包括整数型、浮点型、字符型和布尔型。引用数据类型:指向对象的引用,…...
Stable Diffusion的加噪和去噪详解
SD模型原理: Stable Diffusion概要讲解Stable diffusion详细讲解Stable Diffusion的加噪和去噪详解Diffusion ModelStable Diffusion核心网络结构——VAEStable Diffusion核心网络结构——CLIP Text EncoderStable Diffusion核心网络结构——U-NetStable Diffusion中…...
解决 Gradle 报错:`Plugin with id ‘maven‘ not found` 在 SDK 开发中的问题
在 SDK 开发过程中,使用 Gradle 构建和发布 SDK 是常见的任务。在将 SDK 发布为 AAR 或 JAR 包时,你可能会使用 apply plugin: maven 来发布到本地或远程的 Maven 仓库。但是,随着 Gradle 版本的更新,特别是从 Gradle 7 版本开始&…...
EMD-KPCA-Transformer多变量回归预测!分解+降维+预测!多重创新!直接写核心!
EMD-KPCA-Transformer多变量回归预测!分解降维预测!多重创新!直接写核心! 目录 EMD-KPCA-Transformer多变量回归预测!分解降维预测!多重创新!直接写核心!效果一览基本介绍程序设计参…...
前端 px、rpx、em、rem、vh、vw计量单位的区别
目录 一、px 二、rpx 三、em 四、rem 五、vh和vw 六、rpx 和 px之间的区别 七、px 与 rem 的区别 一、px px(像素): 1、相对单位,代表屏幕上的一个基本单位,逻辑像素。 2、不会根据屏幕尺寸或分辨率自动调整大…...
OceanBase数据库产品与工具介绍
OceanBase:蚂蚁集团自主研发的分布式关系数据库 1、什么是 OceanBase? OceanBase 是由蚂蚁集团完全自主研发的企业级分布式关系数据库,始创于 2010 年。它具有以下核心特点: 数据强一致性:在分布式架构下确保数据强…...
学习threejs,对模型多个动画切换展示
👨⚕️ 主页: gis分享者 👨⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨⚕️ 收录于专栏:threejs gis工程师 文章目录 一、🍀前言1.1 ☘️THREE.AnimationMixer 动画…...
【Bug合集】——Java大小写引起传参失败,获取值为null的解决方案
阿华代码,不是逆风,就是我疯 你们的点赞收藏是我前进最大的动力!! 希望本文内容能够帮助到你!! 目录 一:本文面向的人群 二:错误场景引入 三:正确场景引入 四…...
高版本MATLAB机器人工具箱plot/teach视图兼容性修复实战
1. 问题现象与背景分析 最近在MATLAB 2019b上使用机器人工具箱(Robotics Toolbox)时遇到了一个奇怪的问题。当我像往常一样调用robot.plot()或者robot.teach()函数时,控制台突然报错:"索引超出数组元素数目(4)"。这个错…...
从 LLM 到 Agent Skill —— 一文打通 AI 核心概念底层逻辑
从 LLM 到 Agent Skill —— 一文打通 AI 核心概念底层逻辑你是否经常听到 LLM、Token、Prompt、RAG、Agent 这些词,却总觉得一知半解? 别担心,这篇文章用最通俗的方式,把这10个AI核心概念一次性讲清楚。1. LLM —— 大 Language …...
优化敏感焦虑型依恋
用几个学科的顶层思维,把你的问题重新教育一遍:你不是要“变得迟钝”,你是要完成一次升级:从“敏感地寻找危险”,升级为“敏锐地识别规律”。 从“害怕失去关系”,升级为“有能力经营关系”。 从“被情绪牵…...
声明式HTTP客户端框架ionclaw:简化API调用与提升微服务健壮性
1. 项目概述与核心价值最近在开源社区里,一个名为ionclaw-org/ionclaw的项目引起了我的注意。乍一看这个名字,可能会觉得有些陌生,甚至有点“硬核”。但当你深入进去,会发现它瞄准的是一个非常具体且高频的开发痛点:如…...
CANN/asc-devkit Reset函数说明
Reset 【免费下载链接】asc-devkit 本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。 项目地址: https://gitcode.com/cann…...
告别网盘限速!3步搞定百度网盘高速下载秘籍
告别网盘限速!3步搞定百度网盘高速下载秘籍 【免费下载链接】baidu-wangpan-parse 获取百度网盘分享文件的下载地址 项目地址: https://gitcode.com/gh_mirrors/ba/baidu-wangpan-parse 还在为百度网盘的龟速下载而烦恼吗?每次看到那几十KB/s的速…...
向华为学习——解读华为流程型组织的基石:业务流架构(BPA)全景解析【附全文阅读】
华为流程型组织 BPA 业务流架构|推介总结 适应人群:企业高管、战略与变革负责人、流程与运营总监、组织与 HR 管理者、数字化与 IT 架构师、咨询顾问。 重要性总结:本文档是华为流程型组织建设的核心方法论,系统解析 BPA 业务流架构全景,明确战略驱动、业务本质、责任落地…...
写了三年CRUD我觉得自己废了,直到产品经理说了一句话
2024年秋天,我在工位上改一个按钮的颜色。从#1890FF改成#4096FF,产品经理说原来的颜色「太老气了」。改完之后,我盯着屏幕发了十分钟的呆。不是因为这个需求有多难,而是我突然意识到,这是我今天写的第四个CSS微调了。上…...
js脚本翻页自用
版本 1:按键停止(推荐)// 按 ESC 键随时停止let count 0;let running true;const stop () > {running false;console.log(⏹️ 已停止,共点击 count 次);};const interval setInterval(() > {if (!running) {clear…...
MCP TypeScript SDK 服务说明文档
1. 服务概述 一句话简介:完整的MCP规范TypeScript实现,轻松构建MCP客户端和服务器,为LLM应用提供标准化的上下文管理能力。 服务名称:MCP TypeScript SDK版本号:Latest开发者/提供方:federated-alpha协议…...
