python基础——条件判断和循环【if,while,for,range】
📝前言:
这篇文章主要讲解一下条件判断语句if和循环语句while,for在python中需要注意的地方。
建议已有一定了解(对语句的执行逻辑清楚)的读者观看,如果对条件判断和循环的执行逻辑不太清楚,也可先浏览C语言——分支语句(if,switch)和C语言——循环结构这两篇文章,先理解这两种语句的执行逻辑
🎬个人简介:努力学习ing
📋个人专栏:C语言入门基础以及python入门基础
🎀CSDN主页 愚润求学
🌄每日鸡汤:最慢的步伐不是跬步,而是徘徊,最快的脚步不是冲刺,而是坚持。
文章目录
- 一,if语句
- 1,基本介绍
- 2,例子
- 3,注意事项
- 二,while语句
- 1,基本介绍
- 2,例子
- 3,注意事项
- 三,for语句
- 1,基本介绍
- 2,例子
- 3,注意事项
- 四,range()函数
- 1,基本介绍
- 2,例子
- 3,注意事项
一,if语句
1,基本介绍
在 Python 中,if 语句用于基于一定条件来控制程序的执行流程。它允许你基于一个或多个条件来决定哪些代码块应该被执行。下面是 if 语句的基本结构:
if 条件1:代码块1
elif 条件2:代码块2
else:代码块3
这里的 elif 和 else 部分是可选的。elif 用于检查其他条件,else 用于在前面条件都不满足时执行。
2,例子
下面是一个简单的例子,演示如何使用 if 语句来检查一个数字是否是正数、零或负数:
num = -5if num > 0:print("num 是一个正数")
elif num == 0:print("num 是零")
else:print("num 是一个负数")
运行结果:
在这个例子中,因为num的值为 -5,所以if条件不满足。然后我们检查elif条件,即num是否等于 0。也不满足。因此,我们执行else代码块,输出 “num 是一个负数”。
3,注意事项
(1)缩进:缩进就是在语句前的空格数量(通常一个tab键 == 四个空格),在 Python 中,缩进是至关重要的。 if、elif 和 else 语句都是根据缩进来寻找匹配对象的。为了规范:一个程序中的缩进应当只用一种形式,即只用tab键 或者 只用空格,不要混用
(2)条件:确保你使用的条件能够正确地评估你想要检查的变量或表达式。(表达式或者变量的结果通常是布尔类型)
(3)逻辑运算符:你还可以使用逻辑运算符(如 and、or 和 not)来构建更复杂的条件。
例如(使用and运算符):
x = 10
y = 20# 检查 x 是否大于 5 且 y 是否大于 x
if x > 5 and y > x:print("x 大于 5 且 y 大于 x")
(4)我们还可以将input输入语句直接写入判断语句中,以节省代码量
如下:
print("欢迎来到动物园")
if int(input("请输入你的身高(单位cm):")) <=120:print("你的身高小于120cm,你可以免费游玩!")
运行结果:
二,while语句
1,基本介绍
在 Python 中,while 语句用于重复执行一段代码。只要指定的条件为 True,就一直循环执行,当条件变为 False 时,循环停止。
while 语句的基本结构如下:
while 条件:# 循环体,当条件为 True 时执行# ...
2,例子
下面是一个简单的例子,演示了如何使用 while 语句输出数字 1 到 5:
i = 1while i <= 5:print(i)i += 1
输出结果:
在这个例子中,我们初始化变量i为1。然后,我们使用 while 循环来检查i是否小于或等于5。只要这个条件为True,就会执行循环体,即输出i的值并将其增加 1。当i达到6时,不满足循环条件(i<=5),循环停止。
3,注意事项
(1)无限循环:要小心避免无限循环。如果条件永远为 True,程序将永远执行循环体,这可能导致程序无响应。要确保在循环体内适当地更新循环控制变量,能够使条件最终变为 False。(即:要在循环体中,设置能改变条件结果的值)
(2)使用continue开始下一次循环:你可以使用continue语句,直接结束本次循环,开启下一次循环
(3)使用 break 退出循环:你可以使用 break 语句提前退出循环。但,break只能跳出本层循环
(4)缩进:while循环也使用缩进来控制语句块
三,for语句
1,基本介绍
在 Python 中,for 循环遵守“轮询”机制,对一批内容进行“逐个处理”,通常用来用于遍历序列(如列表、元组、字符串等)或其他可迭代对象的元素。
基本语法:
for 变量 in 可迭代对象:循环体
●
for关键字:用于开始一个循环。
● 变量:表示当前迭代的元素,每次迭代都会将可迭代对象的下一个元素赋值给变量。
●in关键字:用于指定被迭代的对象。
● 可迭代对象:表示要被迭代的对象,如列表、元组、字符串等。
2,例子
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:print(fruit)
输出结果:
在上述示例中,我们有一个包含三种水果的列表。我们使用for循环遍历这个列表,并打印每个水果。在每次迭代中,变量fruit会被赋值为列表中的下一个元素,然后执行循环体,直到列表里的元素被遍历完以后,循环停止。
3,注意事项
(1)范围:for 循环通常用于遍历序列或可迭代对象的元素。如果使用非迭代对象,会导致错误。
(2)索引:虽然 for 循环可以直接访问序列的元素,但如果想同时获取元素的索引和值,可以使用 enumerate() 函数。
(3)条件:在 for 循环中,条件可以在循环体内部使用,但通常不推荐在循环头使用条件,因为这可能会导致循环无法执行。
四,range()函数
1,基本介绍
range() 是 Python 内置函数,用于生成一个整数范围的序列。这个范围可以用于各种计算,如循环、序列 slicing 等。
基本语法:
range(start, stop, step)
●start:范围序列的起始值。
●stop:范围序列的终止值(不包括该值)。
●step:范围序列中每两个连续数字之间的差值。
2,例子
与for循环的结合使用:
for i in range(5): # 这将生成从 0 到 4 的序列print(i)
输出结果:
在上述示例中,我们使用range(5)来生成一个包含从0 到 4的整数序列。然后我们使用for循环遍历这个范围并打印每个数字。
3,注意事项
(1)范围:range() 函数生成的范围是左闭右开(即不包含 stop 参数指定的值)。
(2)默认值:start 默认为 0,step 默认为 1。
(3)应用:range() 生成的范围序列可以用于很多场景,如循环、列表推导式、slicing 等
🌈我的分享也就到此结束啦🌈
要是我的分享也能对你的学习起到帮助,那简直是太酷啦!
若有不足,还请大家多多指正,我们一起学习交流!
📢公主,王子:点赞👍→收藏⭐→关注🔍
感谢大家的观看和支持!祝大家都能得偿所愿,天天开心!!!
相关文章:
python基础——条件判断和循环【if,while,for,range】
📝前言: 这篇文章主要讲解一下条件判断语句if和循环语句while,for在python中需要注意的地方。 建议已有一定了解(对语句的执行逻辑清楚)的读者观看,如果对条件判断和循环的执行逻辑不太清楚,也可…...
Pytorch 复习总结 6
Pytorch 复习总结,仅供笔者使用,参考教材: 《动手学深度学习》Stanford University: Practical Machine Learning 本文主要内容为:Pytorch 计算机视觉。 本文先介绍了计算机视觉中两种常见的改进模型泛化性能的方法:…...
借助 Terraform 功能协调部署 CI/CD 流水线-Part 1
在当今快节奏的开发环境中,实现无缝、稳健的 CI/CD 流水线对于交付高质量软件至关重要。在本文中,我们将向您介绍使用 Bitbucket Pipeline、ArgoCD GitOps 和 AWS EKS 设置部署的步骤,所有步骤都将利用 Terraform 的强大功能进行编排。在Part…...
云原生基础知识:容器技术的历史
容器化的定义: 容器化是一种轻量级的虚拟化技术,将应用程序及其所有依赖项(包括运行时、系统工具、系统库等)打包到一个称为容器的单独单元中。容器提供了一种隔离的执行环境,使得应用程序可以在不同的环境中运行&…...
golang实现正向代理和反向代理
文章目录 正向代理反向代理区别与联系:总结代理服务器实现正向代理反向代理正向代理 正向代理是客户端代理,它位于客户端和目标服务器之间。它的作用是保护客户端的隐私和安全。 如我们现在想要访问谷歌,但是由于某些原因,无法直接访问到谷歌,我们可以通过连接一台代理服务…...
grpc四种数据流
grpc四种数据流 简介 1.简单模式 这种模式最为传统,即客户端发起一次请求,服务端响应一个数据,这和大家平时熟悉的rpc没什么区别,所以不在详细介绍 2.服务端数据流模式 这种模式是客户端发起一次请求,服务端返回一段连续的数据流。典型的例子是客户端向服务端发…...
SpringCloud-Alibaba-Nacos教程
SpringCloud-Alibaba-Nacos教程 下载地址 https://github.com/alibaba/nacos/releases/tag/2.2.3 直接进入bin包 运行cmd命令 startup.cmd -m standalone 运行成功后 进入nacos可视化页面 账号密码默认都是nacos http://localhost:8848/nacos 微服务入驻Nacos服务注册…...
bug_java
文章目录 1.创建Maven时: idea报错为:java:错误:不支持发行版本52. Springbot启动报错-类文件具有错误的版本 61.0, 应为 52.0 1.创建Maven时: idea报错为:java:错误:不支持发行版本…...
【目标检测】旋转目标检测DOTA格式转YOLO格式标注
准备DOTA格式数据集: dota_dataset -- images |----- train |----- val -- labels |----- train |----- train_original |----- val |----- val_original 修改class_mapping和图片格式: ultralytics/data/converter.py convert_dota_to_yolo_obb() 转换标…...
运动想象 (MI) 迁移学习系列 (3) : MSFT
运动想象迁移学习系列:MSFT 0. 引言1. 主要贡献2. 数据增强方法3. 基于度量的空间滤波转换器3.1 空间过滤3.2 脑电图ViT3.2.1 变压器编码器层3.2.2 基于度量的损失函数 4. 实验结果4.1 消融实验4.2 基线任务对比4.3 跨主体 5. 总结欢迎来稿 论文地址:https://www.s…...
NeRF模型NeRF模型
参考视频:https://www.youtube.com/watch?vHfJpQCBTqZs&ab_channelVision%26GraphicsSeminaratMIT NeRF模型的输入输出: 输入: (x, y, z): 一个三维空间坐标,代表场景中的一个位置点(θ, φ): 视线方向,θ表示与y轴的夹角,φ表示与x轴的夹角,用两个角度可以…...
python爬虫(4)
#前期先说明一下为啥爬虫需要学习数组的存储和处理,只是说在你后期接触到最简单的爬虫后有一个地方可以存放你的数据# 下面为大家带来一个我在做excel表整理时的代码以及上次代码的结果 上次代码的结果: 新的代码: import numpy as np im…...
递归神经网络 (RNN) 及其变体 LSTM (长短期记忆) 和 GRU (门控循环单元)
递归神经网络(RNN, Recurrent Neural Networks)是一类用于处理序列数据的神经网络,特别适合于时间序列数据、语音、文本等连续数据的处理。RNN之所以独特,是因为它们在模型内部维持一个隐藏状态,该状态理论上可以捕获到…...
Redis的HyperLogLog原理介绍
Redis 的 HyperLogLog 数据结构实现了一种基于概率的基数估算算法,用于在占用极小内存的情况下估算一个集合中不重复元素(唯一值)的数量。以下是 HyperLogLog 算法的基本原理: 哈希函数: HyperLogLog 使用一个强散列函…...
微信小程序开发系列(二十六)·小程序运行机制(启动、前后台状态、挂起、销毁)和小程序更新机制
目录 1. 小程序运行机制 1.1 启动 1.2 前台和后台状态 1.3 挂起 1.4 销毁 2. 小程序更新机制 1. 小程序运行机制 1.1 启动 小程序启动可以分为两种情况,一种是冷启动,一种是热启动。 冷启动:如果用户首次打开,或小…...
百度信息流
计划: 流量选择 - 四个维度: 百度信息流 ; 整合了百度APP、WAP、PC各频道信息流和内容详情页的流量资源,广告和信息流内容资讯穿插展现;适合所有产品呢 好看视频; 汇集海量优质的视频内容,通过智能推荐算法为用户推送最适合的视频广告,视频广告在列表页有声…...
JAVA后端开发面试基础知识(十)——设计模式
创建型模式 创建型模式的作用就是创建对象,说到创建一个对象,最熟悉的就是 new 一个对象,然后 set 相关属性。但是,在很多场景下,我们需要给客户端提供更加友好的创建对象的方式,尤其是那种我们定义了类&am…...
红帽认证知识储备-Linux安全
Linux安全 内置安全机制 常见的系统用的centos中用的是SELinux,ubuntu用的是AppArmor,deepin什么都没用 SELINUX 定义 SELinux 是一个 Linux 内核安全模块,它增强了系统的安全性,通过实施强制访问控制策略来限制程序和用户对系…...
Rust 语言中的 dyn 关键字
在 Rust 中,&dyn Error 是一个指向动态类型的 Error trait 对象的引用。这里的 dyn 关键字用于表示一个动态分派的 trait 对象。动态分派允许你在运行时确定实际的对象类型,而不是在编译时。 dyn 关键字在 Rust 中用于替换早期版本中的 & 符号&…...
软件测试实战,Web项目网页bug定位详细分析总结(详全)
目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 1、前置条件 1&a…...
Flask RESTful 示例
目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题: 下面创建一个简单的Flask RESTful API示例。首先,我们需要创建环境,安装必要的依赖,然后…...
【力扣数据库知识手册笔记】索引
索引 索引的优缺点 优点1. 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度(创建索引的主要原因)。3. 可以加速表和表之间的连接,实现数据的参考完整性。4. 可以在查询过程中,…...
23-Oracle 23 ai 区块链表(Blockchain Table)
小伙伴有没有在金融强合规的领域中遇见,必须要保持数据不可变,管理员都无法修改和留痕的要求。比如医疗的电子病历中,影像检查检验结果不可篡改行的,药品追溯过程中数据只可插入无法删除的特性需求;登录日志、修改日志…...
UE5 学习系列(三)创建和移动物体
这篇博客是该系列的第三篇,是在之前两篇博客的基础上展开,主要介绍如何在操作界面中创建和拖动物体,这篇博客跟随的视频链接如下: B 站视频:s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...
质量体系的重要
质量体系是为确保产品、服务或过程质量满足规定要求,由相互关联的要素构成的有机整体。其核心内容可归纳为以下五个方面: 🏛️ 一、组织架构与职责 质量体系明确组织内各部门、岗位的职责与权限,形成层级清晰的管理网络…...
关键领域软件测试的突围之路:如何破解安全与效率的平衡难题
在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的核心战斗力。不同于普通商业软件,这些承载着国家安全使命的软件系统面临着前所未有的质量挑战——如何在确保绝对安全的前提下,实现高效测试与快速迭代?这一命题正考验着…...
Python ROS2【机器人中间件框架】 简介
销量过万TEEIS德国护膝夏天用薄款 优惠券冠生园 百花蜂蜜428g 挤压瓶纯蜂蜜巨奇严选 鞋子除臭剂360ml 多芬身体磨砂膏280g健70%-75%酒精消毒棉片湿巾1418cm 80片/袋3袋大包清洁食品用消毒 优惠券AIMORNY52朵红玫瑰永生香皂花同城配送非鲜花七夕情人节生日礼物送女友 热卖妙洁棉…...
C++使用 new 来创建动态数组
问题: 不能使用变量定义数组大小 原因: 这是因为数组在内存中是连续存储的,编译器需要在编译阶段就确定数组的大小,以便正确地分配内存空间。如果允许使用变量来定义数组的大小,那么编译器就无法在编译时确定数组的大…...
保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek
文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama(有网络的电脑)2.2.3 安装Ollama(无网络的电脑)2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...
Qemu arm操作系统开发环境
使用qemu虚拟arm硬件比较合适。 步骤如下: 安装qemu apt install qemu-system安装aarch64-none-elf-gcc 需要手动下载,下载地址:https://developer.arm.com/-/media/Files/downloads/gnu/13.2.rel1/binrel/arm-gnu-toolchain-13.2.rel1-x…...




