for x in range(10): pass |
实际上,该语句的确会循环十次,但是除了循环本身之外,它什么也没做。当然,pass语句还有其他方面的作用,比如在函数定义或异常处理方面等,
二、while语句
Python的while语句的功能是,当给定的条件表达式为真时,重复执行循环体(即内嵌的语句),直到条件为假时才退出循环,并执行循环体后面的语句。while语句的语法形式如下所示:
while 表达式 : 循环体 |
while语句的流程图如下所示:
图1:while语句的流程示意图 |
我们跟上一篇文章中介绍的if语句的流程图做一下比较:
图2 :if语句的流程示意图 |
不难发现,两者都有一个表达式和语句体组成,并且都是在表达式的值为真是执行语句体。关键的区别在于,对于if语句,它执行完语句体后,马上退出了if语句;对于while语句,它执行完语句体后,立刻又返回到表达式,只要表达式的值为真,它会一直重复这一过程
循环语句的else子句
与C语言中的while语句和for语句相比,Python语言的两种循环语句有一个很大的不同之处,那就是Python的循环语句可以带有else子句。带有else子句的while循环语句的完整形式如下所示:
while 表达式 : 循环体 else: 语句体 |
当while语句配备else子句时,如果while子句内嵌的循环体在整个循环过程中没有执行break语句(循环体中没有break语句,或者循环体中有break语句但是始终未执行),那么循环过程结束后,就会执行else子句中的语句体。否则,如果while子句内嵌的循环体在循环过程一旦执行break语句,那么程序的流程将跳出循环结构,因为这里的else子句也是该结构的组成部分,所以else子句内嵌的语句体也就不会执行了。
pass语句
前面说过,循环体可以包含一个语句,也可以包含多个语句,但是却不可以没有任何语句。那么,如果我们只是想让程序循环一定次数,但是循环过程什么也不做的话,那该怎么办呢?当然是有办法的,因为Python为我们提供了一个pass语句,该语句什么也不做,也就是说它是一个空操作,所以,下列代码是合法的:
for x in range(10): pass |
实际上,该语句的确会循环十次,但是除了循环本身之外,它什么也没做。当然,pass语句还有其他方面的作用,比如在函数定义或异常处理方面等,
for x in range(10): pass |
实际上,该语句的确会循环十次,但是除了循环本身之外,它什么也没做。当然,pass语句还有其他方面的作用,比如在函数定义或异常处理方面等,