循环是编程语言的基本概念之一,当您要重复特定代码块多次直到满足给定条件时,循环很方便。Python中有两个基本的循环构造,for和while循环。本教程介绍了Python中while循环的基础,我们还将向您展示如何使用else子句以及break和continue语句。在Linux平台中这些知识都适用,安装Python请参考在CentOS 8系统上安装Python 3.8并创建Python虚拟环境。
Python while循环 只要给定条件的值为true,while循环便执行其语句的次数未知。 Python while循环采用以下形式: while EXPRESSION: STATEMENT(S) while语句以while关键字开头,后跟条件表达式。 在执行语句之前先评估EXPRESSION,如果条件评估为true,则执行STATEMENT(S),否则,如果条件评估为false,则循环终止,并将程序控制传递给后面的语句。 STATEMENT(S)块以缩进开始,以第一条未缩进的行结束,大多数人选择使用4空格或是2空格缩进,官方的Python代码样式指南建议每个缩进级别使用4个空格,并避免混合使用制表符和空格进行缩进。 让我们看下面的示例代码,只要它小于5,就递增并打印变量i的当前值: i=0 while i < 5: i += 1 print('number:', i) 只要i小于或等于5,Tue循环就会迭代,它将产生以下输出: number: 1 number: 2 number: 3 number: 4 number: 5 Python支持标准比较操作: a == b-如果a和b相等,则为true。 a != b-如果a和b不相等,则为true。 a > b-如果a大于b,则为true。 a >= b-如果a等于或大于b,则为true。 a < b-如果a小于b,则为true。 a <= b-如果a等于或小于b,则为true。 要否定条件表达式,请使用逻辑非运算符: i=0 while not i >= 5: i += 1 print('number:', i)
break和continue声明 break和continue语句使您可以控制while循环的执行。 break语句终止当前循环,并将程序控制权传递给终止循环之后的语句,最常见的情况是在满足特定条件时使用break终止循环。 在下面的示例中,一旦当前迭代项等于2,则循环的执行将中断: i=0 while i < 5: i += 1 if i == 2: break print('number:', i) 返回: Number: 1 Continue语句退出循环的当前迭代,并将程序控制传递给循环的下一个迭代。 在下面的代码中,一旦当前迭代的项目等于2,则continue语句将使执行返回到循环的开头并继续下一次迭代: i=0 while i < 5: i += 1 if i == 2: continue print('number:', i) 返回: number: 1 number: 3 number: 4 number: 5
else子句 与其他语言不同,在Python中,while循环具有可选的else子句: while EXPRESSION: STATEMENT(S) else: STATEMENT(S) 仅当EXPRESSION的计算结果为false时,才会执行else子句中的语句,如果引发异常,或者循环以break语句终止,则将不会执行该异常。 这是一个例子: i=0 while i < 5: i += 1 print('number:', i) else: print('Loop completed.') 返回: number: 1 number: 2 number: 3 number: 4 number: 5 Loop completed. 现在,跳出循环时会发生什么: i=0 while i < 5: i += 1 if i == 2: break print('number:', i) else: print('Loop completed.') else子句中的语句未执行,因为该表达式未求值为false: Number: 1 带while循环的else子句不经常使用,一种常见的情况是,当您希望从循环中中断时,如果循环继续运行直到条件评估为false,则可以执行某些语句或函数。
无限while循环 无限循环是无限重复的循环,直到程序终止才终止,如果条件始终为true,则将出现无限循环。 无限循环通常用于使程序等待某些外部事件的发生,通常,在Python中,使用while True创建无限循环:除了True,您还可以使用始终返回true的任何其他表达式。 这是一个无限while循环的示例,该循环将继续提示您输入“Yes”: while True: i = input('Please enter \'Yes\': ') if i.strip() == 'Yes': break 上面的while循环将一直运行,直到您输入“Yes”: Please enter 'Yes': 3 Please enter 'Yes': l Please enter 'Yes': lin Please enter 'Yes': No Please enter 'Yes': Yes 终止无限循环的另一种方法是按CTRL+C。 编写无限循环时,请确保使用break语句在某个时刻退出循环。
结语 以上就是Python while循环、break和continue声明、else声明、无限while循环的基本知识。 只要给定条件的值为true,while循环就会重复执行其语句。
相关主题 |