python基础——条件判断和循环【if,while,for,range】

news2024/10/2 1:30:18

📝前言:
这篇文章主要讲解一下条件判断语句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

这里的 elifelse 部分是可选的。elif 用于检查其他条件,else 用于在前面条件都不满足时执行。

2,例子

下面是一个简单的例子,演示如何使用 if 语句来检查一个数字是否是正数、零或负数:

num = -5

if num > 0:
    print("num 是一个正数")
elif num == 0:
    print("num 是零")
else:
    print("num 是一个负数")

运行结果:
在这里插入图片描述
在这个例子中,因为 num 的值为 -5,所以 if 条件不满足。然后我们检查 elif 条件,即 num 是否等于 0。也不满足。因此,我们执行 else 代码块,输出 “num 是一个负数”。

3,注意事项

(1)缩进:缩进就是在语句前的空格数量(通常一个tab键 == 四个空格),在 Python 中,缩进是至关重要的。 ifelifelse 语句都是根据缩进来寻找匹配对象的。为了规范:一个程序中的缩进应当只用一种形式,即只用tab键 或者 只用空格不要混用
(2)条件:确保你使用的条件能够正确地评估你想要检查的变量或表达式。(表达式或者变量的结果通常是布尔类型
(3)逻辑运算符:你还可以使用逻辑运算符(如 andornot)来构建更复杂的条件。
例如(使用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 = 1

while i <= 5:
    print(i)
    i += 1

输出结果:
在这里插入图片描述
在这个例子中,我们初始化变量 i1。然后,我们使用 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):  # 这将生成从 04 的序列
    print(i)

输出结果:
在这里插入图片描述
在上述示例中,我们使用 range(5) 来生成一个包含从 0 到 4整数序列。然后我们使用 for 循环遍历这个范围并打印每个数字。

3,注意事项

(1)范围range() 函数生成的范围是左闭右开(即不包含 stop 参数指定的值)。
(2)默认值start 默认为 0,step 默认为 1。
(3)应用range() 生成的范围序列可以用于很多场景,如循环、列表推导式、slicing


🌈我的分享也就到此结束啦🌈
要是我的分享也能对你的学习起到帮助,那简直是太酷啦!
若有不足,还请大家多多指正,我们一起学习交流!
📢公主,王子:点赞👍→收藏⭐→关注🔍
感谢大家的观看和支持!祝大家都能得偿所愿,天天开心!!!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Elasticsearch架构原理

一. Elasticsearch架构原理 1、Elasticsearch的节点类型 在Elasticsearch主要分成两类节点&#xff0c;一类是Master&#xff0c;一类是DataNode。 1.1 Master节点 在Elasticsearch启动时&#xff0c;会选举出来一个Master节点。当某个节点启动后&#xff0c;然后使用Zen D…

kali当中不同的python版本切换(超简单)

kali当中本身就是自带两个python版本的 配置 update-alternatives --install /usr/bin/python python /usr/bin/python2 100 update-alternatives --install /usr/bin/python python /usr/bin/python3 150 切换版本 update-alternatives --config python 0 1 2编号选择一个即可…

2024护网面试题精选(二)完

0x02. 内网渗透篇 00- 内网渗透的流程 拿到跳板后&#xff0c;先探测一波内网存活主机&#xff0c;用net user /domian命令查看跳板机是否在域 内&#xff0c;探测存活主机、提权、提取hash、进行横向移动&#xff0c;定位dc位置&#xff0c;查看是否有能直接提权域 管的漏洞…

springboot整合shiro的实战教程(二)

文章目录 整合思路1.创建springboot项目2.引入依赖3.创建Shiro Filter0.创建配置类1.配置shiroFilterFactoryBean2.配置WebSecurityManager3.创建自定义Relm4.配置自定义realm5.编写控制器跳转至index.html6.加入资源的权限控制7. 常见过滤器 登录认证实现登录界面开发controll…

复盘-PPT

调整PPT编号起始页码在设计→幻灯片大小 设置所有以及文本项目符号 ## 打开母版&#xff0c;找到对应级别设置重置 当自动生成的smartart图形不符合预期时

set函数

set() 函数创建的集合具有以下特点&#xff1a; 无序性&#xff08;Unordered&#xff09;&#xff1a;集合中的元素没有固定的顺序&#xff0c;每次输出的顺序可能不同。 唯一性&#xff08;Unique&#xff09;&#xff1a;集合中的元素是唯一的&#xff0c;重复的元素会被自…

LeetCode刷题笔记之两数相加【数组】【中等】

两数相加 刷题笔记 &#x1f565;日期&#xff1a; 2024/03/09 题目描述&#xff1a; 给你两个 非空 的链表&#xff0c;表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的&#xff0c;并且每个节点只能存储 一位 数字。 请你将两个数相加&#xff0c;并以相同…

C++面试宝典一部分

今天整理书籍资料时&#xff0c;发现多年前打印的面试资料&#xff0c;拍照分享给大家。

挑战杯 基于计算机视觉的身份证识别系统

0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 基于机器视觉的身份证识别系统 该项目较为新颖&#xff0c;适合作为竞赛课题方向&#xff0c;学长非常推荐&#xff01; &#x1f9ff; 更多资料, 项目分享&#xff1a; https://gitee.com/dancheng-sen…

博士推荐 | 美国知名化工企业研发主管,高分子科学与工程博士

编辑 / 木子 审核 / 朝阳 伟骅英才 伟骅英才致力于以大数据、区块链、AI人工智能等前沿技术打造开放的人力资本生态&#xff0c;用科技解决职业领域问题&#xff0c;提升行业数字化服务水平&#xff0c;提供创新型的产业与人才一体化服务的人力资源解决方案和示范平台&#x…

Python学习之基础语法

一、HelloWorld 二、Python基础语法 2.1 字面量 定义&#xff1a;在代码中&#xff0c;被写下来的固定的值&#xff0c;称之为字面量。 常用的6种值的类型 字符串 Python中&#xff0c;字符串需要用双引号包围&#xff1b; 被双引号包围的都是字符串 666 13.14 "黑马…

【C++初阶】第五站:C/C++内存管理 (匹配使用,干货到位)

前言&#xff1a; 本文知识点&#xff1a; 1. C/C内存分布2. C语言中动态内存管理方式3. C中动态内存管理4. operator new与operator delete函数 5. new和delete的实现原理 &#xff08;干货在此&#xff09; 6. 定位new表达式(placement-new)7. 常见面试题 目录 C/C内…

MybatisPlus知识点总结(基于黑马2023MybatisPlus课程)

MybatisPlus知识点总结 配套资料 黑马微服务框架笔记&#xff0c;内含mpMybatisPlus.pptxMyBatis-Plus &#xff08;mp中文官网&#xff09; 快速入门 入门案例 使用MybatisPlus的基本步骤&#xff1a;1.引入MybatisPlus依赖&#xff0c;代替Mybatis依赖2.定义Mapper接口并继…

浅谈2024 年 AI 辅助研发趋势!

目录 ​编辑 引言 一、AI辅助研发现状 1. 技术发展 2. 工具集成 3. 应用场景 二、AI辅助研发趋势 1. 更高的自动化程度 2. 更高的智能化程度 3. 更多的领域应用 4. 更高的重视度 三、结论 四. 完结散花 悟已往之不谏&#xff0c;知来者犹可追 创作不易&#xff…

编码器-解码器模型(Encoder-Decoder)

注意&#xff1a;本文引用自专业人工智能社区Venus AI 更多AI知识请参考原站 &#xff08;[www.aideeplearning.cn]&#xff09; 编码器-解码器模型简介 Encoder-Decoder算法是一种深度学习模型结构&#xff0c;广泛应用于自然语言处理&#xff08;NLP&#xff09;、图像处理…

红包题第一弹

下载附件&#xff0c;发现有86个压缩包 现每个压缩包里面都有图片&#xff0c;010打开图片末尾都有base64部分&#xff0c;并且每个压缩包里面图片末尾的base64长度一样&#xff0c;刚好每一张的base64长度为100。猜测需要拼接起来然后解码 写个python脚本 import os import …

Midjourney绘图欣赏系列(九)

Midjourney介绍 Midjourney 是生成式人工智能的一个很好的例子&#xff0c;它根据文本提示创建图像。它与 Dall-E 和 Stable Diffusion 一起成为最流行的 AI 艺术创作工具之一。与竞争对手不同&#xff0c;Midjourney 是自筹资金且闭源的&#xff0c;因此确切了解其幕后内容尚不…

SpringBoot多数据源切换 多数据源事务解决方案 二

SpringBoot多数据源事务解决方案 https://blog.csdn.net/u013407099/article/details/124526396多数据源切换下保证事务解决方案 https://blog.csdn.net/reee112/article/details/90442542概述 前情提要 多数据源切换流程结构图如下所示&#xff0c;包含几个组成元素&#xff…

浪潮信息InManage升级发布 三大功能释放数据中心运维管理压力

近日&#xff0c;浪潮信息官网开放了数据中心管理平台InManage全新版本的开放体验渠道&#xff0c;升级后的InManage拥有更强大的功能体验&#xff0c;可以有效解决大模型等AIGC应用对于数据中心的运维管理压力&#xff0c;通过全新功能的加持&#xff0c;浪潮信息将让数据中心…

Flutter 开发环境搭建-VS Code篇

1.准备环境 Java SDK 下载及安装Flutter SDK 安装及配置环境变量 下载地址将flutter sdk解压目录下的bin目录放到系统环境变量中 检查环境&#xff0c;在系统终端中输入&#xff1a; # 打印flutter sdk版本号 flutter --version# 检查flutter运行环境 flutter doctor第一次运…