【人生苦短,我学 Python】基础篇——条件判断与循环语句(Day12)

2023-10-29 07:10

本文主要是介绍【人生苦短,我学 Python】基础篇——条件判断与循环语句(Day12),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

写在前面:大家好!我是【AI 菌】,一枚爱弹吉他的程序员。我热爱AI、热爱分享、热爱开源! 这博客是我对学习的一点总结与记录。如果您也对 深度学习、机器视觉、算法、Python、C++ 感兴趣,可以关注我的动态,我们一起学习,一起进步~
我的博客地址为:【AI 菌】的博客
我的Github项目地址是:【AI 菌】的Github

-> 前往【人生苦短,我学 Python】总目录 <-

文章目录

    • 一、条件判断
      • (1) if-elif-else
      • (2) if 嵌套
      • (3) 条件表达式
    • 二、循环结构
      • (1) while 循环
      • (2) for 循环
    • 三、break与continue的区别

本文将为大家介绍 Python 条件判断循环语句的使用方法,以及循环体中break与continue的区别。

一、条件判断

(1) if-elif-else

if语句是判断语句的基础。if语句的基本形式如下:

if case1:block1
elif case2:block2
else:block3

如果复合语句是单一语句,可以将前面的语句写在同一行。其基本形式如下:

if case1:block1
elif case2:block2
elif case3:block3
else:block4

注:这条原则也适用于for循环和while循环语句。

(2) if 嵌套

在嵌套 if 语句中,可以把 if…elif…else 结构放在主 if…elif…else 结构中。基本结构如下:

if case1:if case1.1:block1elif case1.2:block2else:block3
elif case2:block4
else:block5

(3) 条件表达式

如果判断条件结构简单,还可使用条件表达式,即三元操作符。基本形式如下:

# 如果condition为true,返回X,否则Y
X if condition else Y  

下面举一个简单的例子,演示一下三元操作符:

# 输出a,b中较大的值
a,b = 6,8
c = a if a>b else b
print("a,b中较大的是:", c)

运行结果:

a,b中较大的是: 8

二、循环结构

(1) while 循环

while语句也是循环语句中的基础语句。while语句的基本形式如下:

while condition:repeat_block

while循环里的程序块repeat_block会一直循环执行下去,直到condition值为假。

在while、for语句之后,也可以有else语句。 当 condition 为假时,跳出循环,执行else里的程序块。 while-else语句的基本形式如下:

while condition:repeat_block
else:once_block

注:如果循环内是break语句终止循环,则不进入else语句块。

(2) for 循环

for语句为迭代而生,它是循环语句中的基础语句。for语的基本形式如下:

for iter_var in iterable:repeat_block

每次循环,迭代变量(iter_var)被设置为可迭代对象(iterable)的当前元素,提供给repeat_block语句块使用。其中,iterable可以是序列,迭代器或其他支持迭代的对象

下面举例来演示3种不同的迭代方式:

1、直接迭代nameList中的元素。

nameList = ["张三", "李四", "王二麻子"]
for name in nameList:print(name)

运行结果:

张三
李四
王二麻子

2、通过nameList元素下标迭代,在生成range对象时,使用len。

nameList = ["张三", "李四", "王二麻子"]
for i in range(0, len(nameList)):print(nameList[i])

运行结果:

张三
李四
王二麻子

3、使用enumerate生成迭代器,并在for循环中完成对list下标和元素值的访问。

nameList = ["张三", "李四", "王二麻子"]
for i, name in enumerate(nameList):print(i, name)

运行结果:

0 张三
1 李四
2 王二麻子

三、break与continue的区别

break与continue经常用于while以及for循环中,用于中断程序,但两者有本质的区别:

  • break 语句直接跳出当前 for 和 while 的循环体。如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行。
  • continue 语句被用来跳过当前循环块中的剩余语句,然后继续进行下一轮循环。

下图以while循环为例,展示了使用break以及continue时,程序不同的执行顺序:
在这里插入图片描述
由此可见,在循环体中使用break,会直接跳出循环,如图中红线所示;使用contiune时,会结束当前循环,继续执行下轮循环,如图中绿线所示。


-> 回到【人生苦短,我学 Python】总目录 <-

在这里插入图片描述
由于水平有限,博客中难免会有一些错误,有纰漏之处恳请各位大佬不吝赐教!

这篇关于【人生苦短,我学 Python】基础篇——条件判断与循环语句(Day12)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/299066

相关文章

Python将博客内容html导出为Markdown格式

《Python将博客内容html导出为Markdown格式》Python将博客内容html导出为Markdown格式,通过博客url地址抓取文章,分析并提取出文章标题和内容,将内容构建成html,再转... 目录一、为什么要搞?二、准备如何搞?三、说搞咱就搞!抓取文章提取内容构建html转存markdown

Python获取中国节假日数据记录入JSON文件

《Python获取中国节假日数据记录入JSON文件》项目系统内置的日历应用为了提升用户体验,特别设置了在调休日期显示“休”的UI图标功能,那么问题是这些调休数据从哪里来呢?我尝试一种更为智能的方法:P... 目录节假日数据获取存入jsON文件节假日数据读取封装完整代码项目系统内置的日历应用为了提升用户体验,

Python FastAPI+Celery+RabbitMQ实现分布式图片水印处理系统

《PythonFastAPI+Celery+RabbitMQ实现分布式图片水印处理系统》这篇文章主要为大家详细介绍了PythonFastAPI如何结合Celery以及RabbitMQ实现简单的分布式... 实现思路FastAPI 服务器Celery 任务队列RabbitMQ 作为消息代理定时任务处理完整

Python Websockets库的使用指南

《PythonWebsockets库的使用指南》pythonwebsockets库是一个用于创建WebSocket服务器和客户端的Python库,它提供了一种简单的方式来实现实时通信,支持异步和同步... 目录一、WebSocket 简介二、python 的 websockets 库安装三、完整代码示例1.

揭秘Python Socket网络编程的7种硬核用法

《揭秘PythonSocket网络编程的7种硬核用法》Socket不仅能做聊天室,还能干一大堆硬核操作,这篇文章就带大家看看Python网络编程的7种超实用玩法,感兴趣的小伙伴可以跟随小编一起... 目录1.端口扫描器:探测开放端口2.简易 HTTP 服务器:10 秒搭个网页3.局域网游戏:多人联机对战4.

springboot循环依赖问题案例代码及解决办法

《springboot循环依赖问题案例代码及解决办法》在SpringBoot中,如果两个或多个Bean之间存在循环依赖(即BeanA依赖BeanB,而BeanB又依赖BeanA),会导致Spring的... 目录1. 什么是循环依赖?2. 循环依赖的场景案例3. 解决循环依赖的常见方法方法 1:使用 @La

使用Python实现快速搭建本地HTTP服务器

《使用Python实现快速搭建本地HTTP服务器》:本文主要介绍如何使用Python快速搭建本地HTTP服务器,轻松实现一键HTTP文件共享,同时结合二维码技术,让访问更简单,感兴趣的小伙伴可以了... 目录1. 概述2. 快速搭建 HTTP 文件共享服务2.1 核心思路2.2 代码实现2.3 代码解读3.

Python使用自带的base64库进行base64编码和解码

《Python使用自带的base64库进行base64编码和解码》在Python中,处理数据的编码和解码是数据传输和存储中非常普遍的需求,其中,Base64是一种常用的编码方案,本文我将详细介绍如何使... 目录引言使用python的base64库进行编码和解码编码函数解码函数Base64编码的应用场景注意

Python基于wxPython和FFmpeg开发一个视频标签工具

《Python基于wxPython和FFmpeg开发一个视频标签工具》在当今数字媒体时代,视频内容的管理和标记变得越来越重要,无论是研究人员需要对实验视频进行时间点标记,还是个人用户希望对家庭视频进行... 目录引言1. 应用概述2. 技术栈分析2.1 核心库和模块2.2 wxpython作为GUI选择的优

SpringIntegration消息路由之Router的条件路由与过滤功能

《SpringIntegration消息路由之Router的条件路由与过滤功能》本文详细介绍了Router的基础概念、条件路由实现、基于消息头的路由、动态路由与路由表、消息过滤与选择性路由以及错误处理... 目录引言一、Router基础概念二、条件路由实现三、基于消息头的路由四、动态路由与路由表五、消息过滤