QQ个性网:专注于分享免费的QQ个性内容

关于我们| 网站公告| 广告服务| 联系我们| 网站地图

搜索
编程 JavaScript Java C++ Python SQL C Io ML COBOL Racket APL OCaml ABC Sed Bash Visual Basic Modula-2 Logo Delphi IDL Groovy Julia REXX Chapel X10 Forth Eiffel C# Go Rust PHP Swift Kotlin R Dart Perl Ruby TypeScript MATLAB Shell Lua Scala Objective-C F# Haskell Elixir Lisp Prolog Ada Fortran Erlang Scheme Smalltalk ABAP D ActionScript Tcl AWK IDL J PostScript IDL PL/SQL PowerShell

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

日期:2025/04/03 16:45来源:未知 人气:56

导读:我们在实际业务,或者是实际问题,进行数据分析处理的过程中,往往需要对数据集进行处理。从程序设计的角度来看,一维数组,代表了同一数据类型的相关数据。二维数组,相当于我们excel中的表格,可以简单理解成,是由一维数组组成的。比如说,我们的表格按行来看的话,从上到下,每一行,就相当于一个一维数组。而无数的行,就构成了一个二维数组的表格。按列从左到右来看,也是一样的。而在python......

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

从程序设计的角度来看,一维数组,代表了同一数据类型的相关数据。二维数组,相当于我们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 :

<statement(s)>

else:

<additional_statement(s)>

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

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

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

for 语句

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

for循环的一般格式如下:

for in :

else: 执行流程,如下图所示。 ![](https://pics4.baidu.com/feed/0ff41bd5ad6eddc4582cf5ebffc522f353663387.jpeg@f_auto?token=0b0bda0899d4d4fba1bdf8788ad5099c) 我们来看一个 for 循环实例。 ![](https://pics2.baidu.com/feed/d058ccbf6c81800a2788a88c742ba7f4838b47eb.jpeg@f_auto?token=7dd8f2e55bfb7bf660257343d69dc56a) 也可用于打印字符串中的每个字符: ![](https://pics0.baidu.com/feed/e7cd7b899e510fb3f7bfd7761c2d5c9bd0430c5e.jpeg@f_auto?token=de497c969e31a429a03e3fab73d8cbf2) 整数范围值可以配合 range() 函数使用: ![](https://pics3.baidu.com/feed/c2fdfc039245d68859986f4a61dce910d31b2477.jpeg@f_auto?token=2d8b898b86fe12fa8a17106484dd881c) ### for...else 在 Python 中,for...else 语句用于在循环结束后执行一段代码。 语法格式如下: for item in iterable: # 循环主体 else: # 循环结束后执行的代码 当循环执行完毕(即遍历完 iterable 中的所有元素)后,会执行 else 子句中的代码,如果在循环过程中遇到了 break 语句,则会中断循环,此时不会执行 else 子句。 ![](https://pics5.baidu.com/feed/0df431adcbef7609c7b922ede8c337c27cd99e3b.jpeg@f_auto?token=909e1a31197b40e5a403d2f38c87afde) 以下 for 实例中使用了 break 语句,break 语句用于跳出当前循环体,不会执行 else 子句: ![](https://pics7.baidu.com/feed/63d0f703918fa0ec3cbff06ee089cde03d6ddb02.jpeg@f_auto?token=a2fb667320075973adae80afe636ccd9) ### break 和 continue 语句及循环中的 else 子句 break 语句执行流程图: ![](https://pics1.baidu.com/feed/a5c27d1ed21b0ef49e6a58ef1bdac5d480cb3eaa.jpeg@f_auto?token=7486266beb31df783e50e31e0f93be66) continue 语句执行流程图: ![](https://pics4.baidu.com/feed/e824b899a9014c084cf0bfc2cc6596067af4f4bf.jpeg@f_auto?token=46ffcf74c04d472123dc36ff196c4c62) 这里需要注意,break是直接结束循环,转到出口。而continue,只是转移到条件判断语句,循环继续执行。 while 语句代码执行过程: ![](https://pics3.baidu.com/feed/8644ebf81a4c510f208a2d35a647b123d42aa505.jpeg@f_auto?token=895528451fcf4330bd0f7181dc6ae97a) for 语句代码执行过程: ![](https://pics3.baidu.com/feed/03087bf40ad162d963646da2d7c13de28b13cdb7.jpeg@f_auto?token=9f26c5b336d681a9d04d4ac89a261495) break 语句可以跳出 for 和 while 的循环体。如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行。 continue 语句被用来告诉 Python 跳过当前循环块中的剩余语句,然后继续进行下一轮循环。 我们来看具体的例子 while 中使用 break: ![](https://pics3.baidu.com/feed/cb8065380cd79123a4e87c076b2acd8cb2b78062.jpeg@f_auto?token=7242b1f1dd496c400a66e496ca50a048) while 中使用 continue: ![](https://pics5.baidu.com/feed/aa64034f78f0f7362ee26539cc4b2717ebc41392.jpeg@f_auto?token=40fff04988eb29adc7f0fabd2b6eb5a5) 以上就是本篇文章的所有内容。 举报/反馈

关于我们|网站公告|广告服务|联系我们| 网站地图

Copyright © 2002-2023 某某QQ个性网 版权所有 | 备案号:粤ICP备xxxxxxxx号

声明: 本站非腾讯QQ官方网站 所有软件和文章来自互联网 如有异议 请与本站联系 本站为非赢利性网站 不接受任何赞助和广告