百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

「Python程序设计」循环控制:for和while循环语句

off999 2024-09-16 00:51 32 浏览 0 评论

我们在实际业务,或者是实际问题,进行数据分析处理的过程中,往往需要对数据集进行处理。

从程序设计的角度来看,一维数组,代表了同一数据类型的相关数据。二维数组,相当于我们excel中的表格,可以简单理解成,是由一维数组组成的。

比如说,我们的表格按行来看的话,从上到下,每一行,就相当于一个一维数组。而无数的行,就构成了一个二维数组的表格。按列从左到右来看,也是一样的。

而在python编程语言中,类似于一维数组的数据结构是列表,元组,字典。还有pandas库中的series。类似于二维数组的数据结构,典型的代表,就是pandas库中的dataframe。

我们要对一维数组和二维数组,逐个数据元素进行操控的话,就需要通过循环,或者是迭代来实现。循环和迭代,基本上是同一个意思,只是实现的方式略微不同。理论上,一维数组需要一次循环,二维数组则需要二次循环。

循环语句结构

Python 中的循环语句有 for 和 while。

Python 循环语句的控制结构图如下所示。

循环语句,是一个自动执行的过程,所以需要加入控制判断条件,作为结束循环语句的出口。如果没有控制条件,或者是控制条件始终没有达到的话,则会对所有数据都全部循环一遍。

while 循环

Python 中 while 语句的一般形式如下所示:


while 判断条件(condition):

执行语句(statements)……


while 语句的执行流程,如下图所示

这里要注意,while 语句的判断条件,是放在开始,也就是说,进入循环的时候,先进行一次判断。

同样需要注意冒号和缩进问题。另外,在 Python 中没有 do..while 循环。

我们通过一个计算 1 到 100 的总和的例子,来说明 while 语句的实现过程。

第一部分,我们创建了循环所需的3个变量。

第二部分,循环体。

第三部分,打印输入总和。

我们也可以实现无限循环过程,在现实中,我们的操作系统,实际上底层就是一个无线循环的过程。

我们来看下图

这里,我们的条件判断语句,永远是true,所以循环体会一直执行下去,不会停止。只有通过手工干预,中断程序的执行,才能结束无限循环过程。

大家也可以使用 CTRL+C 来退出当前的无限循环,无限循环在服务器上客户端的实时请求非常有用。

while 循环使用 else 语句

如果 while 后面的条件语句为 false 时,则执行 else 的语句块。

语法格式如下:


while <expr>:

<statement(s)>

else:

<additional_statement(s)>


expr 条件语句为 true 则执行 statement(s) 语句块,如果为 false,则执行 additional_statement(s)。

我们来看一个循环输出数字,并且判断大小的例子。

判断的过程,和 if 语句差不多,这里就不再赘述。

for 语句

Python for 循环可以遍历任何可迭代对象,如一个列表或者一个字符串。

for循环的一般格式如下:


for <variable> in <sequence>:

<statements>

else:

<statements>


执行流程,如下图所示。

我们来看一个 for 循环实例。

也可用于打印字符串中的每个字符:

整数范围值可以配合 range() 函数使用:

for...else

在 Python 中,for...else 语句用于在循环结束后执行一段代码。

语法格式如下:


for item in iterable:

# 循环主体

else:

# 循环结束后执行的代码


当循环执行完毕(即遍历完 iterable 中的所有元素)后,会执行 else 子句中的代码,如果在循环过程中遇到了 break 语句,则会中断循环,此时不会执行 else 子句。

以下 for 实例中使用了 break 语句,break 语句用于跳出当前循环体,不会执行 else 子句:

break 和 continue 语句及循环中的 else 子句

break 语句执行流程图:

continue 语句执行流程图:

这里需要注意,break是直接结束循环,转到出口。而continue,只是转移到条件判断语句,循环继续执行。

while 语句代码执行过程:

for 语句代码执行过程:

break 语句可以跳出 for 和 while 的循环体。如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行。

continue 语句被用来告诉 Python 跳过当前循环块中的剩余语句,然后继续进行下一轮循环。

我们来看具体的例子

while 中使用 break:

while 中使用 continue:

以上就是本篇文章的所有内容。

相关推荐

PYTHON-简易计算器的元素介绍

[烟花]了解模板代码的组成importPySimpleGUIassg#1)导入库layout=[[],[],[]]#2)定义布局,确定行数window=sg.Window(&#...

如何使用Python编写一个简单的计算器程序

Python是一种简单易学的编程语言,非常适合初学者入门。本文将教您如何使用Python编写一个简单易用的计算器程序,帮助您快速进行基本的数学运算。无需任何高深的数学知识,只需跟随本文的步骤,即可轻松...

用Python打造一个简洁美观的桌面计算器

最近在学习PythonGUI编程,顺手用Tkinter实现了一个简易桌面计算器,功能虽然不复杂,但非常适合新手练手。如果你正在学习Python,不妨一起来看看这个项目吧!项目背景Tkint...

用Python制作一个带图形界面的计算器

大家好,今天我要带大家使用Python制作一个具有图形界面的计算器应用程序。这个项目不仅可以帮助你巩固Python编程基础,还可以让你初步体验图形化编程的乐趣。我们将使用Python的tkinter库...

用python怎么做最简单的桌面计算器

有网友问,用python怎么做一个最简单的桌面计算器。如果只强调简单,在本机运行,不考虑安全性和容错等的话,你能想到的最简单的方案是什么呢?我觉得用tkinter加eval就够简单的。现在开整。首先创...

说好的《Think Python 2e》更新呢!

编程派微信号:codingpy本周三脱更了,不过发现好多朋友在那天去访问《ThinkPython2e》的在线版,感觉有点对不住呢(实在是没抽出时间来更新)。不过还好本周六的更新可以实现,要不就放一...

构建AI系统(三):使用Python设置您的第一个MCP服务器

是时候动手实践了!在这一部分中,我们将设置开发环境并创建我们的第一个MCP服务器。如果您从未编写过代码,也不用担心-我们将一步一步来。我们要构建什么还记得第1部分中Maria的咖啡馆吗?我们正在创...

函数还是类?90%程序员都踩过的Python认知误区

那个深夜,你在调试代码,一行行检查变量类型。突然,一个TypeError错误蹦出来,你盯着那句"strobjectisnotcallable",咖啡杯在桌上留下了一圈深色...

《Think Python 2e》中译版更新啦!

【回复“python”,送你十本电子书】又到了周三,一周快过去一半了。小编按计划更新《ThinkPython2e》最新版中译。今天更新的是第五章:条件和递归。具体内容请点击阅读原文查看。其他章节的...

Python mysql批量更新数据(兼容动态数据库字段、表名)

一、应用场景上篇文章我们学会了在pymysql事务中批量插入数据的复用代码,既然有了批量插入,那批量更新和批量删除的操作也少不了。二、解决思路为了解决批量删除和批量更新的问题,提出如下思路:所有更新语...

Python Pandas 库:解锁 combine、update 和compare函数的强大功能

在Python的数据处理领域,Pandas库提供了丰富且实用的函数,帮助我们高效地处理和分析数据。今天,咱们就来深入探索Pandas库中四个功能独特的函数:combine、combine_fi...

记录Python3.7.4更新到Python.3.7.8

Python官网Python安装包下载下载文件名称运行后选择升级选项等待安装安装完毕打开IDLE使用Python...

Python千叶网原图爬虫:界面化升级实践

该工具以Python爬虫技术为核心,实现千叶网原图的精准抓取,突破缩略图限制,直达高清资源。新增图形化界面(GUI)后,操作门槛大幅降低:-界面集成URL输入、存储路径选择、线程设置等核心功能,...

__future__模块:Python语言版本演进的桥梁

摘要Python作为一门持续演进的编程语言,在版本迭代过程中不可避免地引入了破坏性变更。__future__模块作为Python兼容性管理的核心机制,为开发者提供了在旧版本中体验新特性的能力。本文深入...

Python 集合隐藏技能:add 与 update 的致命区别,90% 开发者都踩过坑

add函数的使用场景及错误注意添加单一元素:正确示例:pythons={1,2}s.add(3)print(s)#{1,2,3}错误场景:试图添加可变对象(如列表)会报错(Pytho...

取消回复欢迎 发表评论: