在程序开发过程中,有时相同的一段程序代码需要多次执行。如果采用顺序结构,就会使代码冗长,而且降低开发效率。为解决这个问题,Python提供了循环结构语法,下面介绍while循环语句。
while循环
先引入一个简单例子——打印5行”Hello world!“。如果采用顺序结构,就需要写5行:print(“Hello world!”)。这显得很繁琐,而且呆板,毫无技术含量。如果采用while循环,问题就会简化。
count = 0
while count < 5:
print("Hello world!")
count += 1
运行结果为:
Hello world!
Hello world!
Hello world!
Hello world!
Hello world!
代码分析:while循环执行了5次,每次的开始,都需要判断count < 5这个条件是否成立,如果成立,则执行下面的代码;如果不成立,则循环结束。示例中,每一次循环,count的值都会自加1,第1次执行print语句时,count的值为0,第5次执行print语句时,count的值为4,然后count再次自加1,值为5,不再满足count < 5的条件,循环因此结束。
如果需要打印100行”Hello world!“,只需将判断条件改为count < 100即可。
while后面并不是一定要跟随表达式,while真正关心的是后面的表达式或变量的布尔属性。
count = 5
while count:
print("Hello world!")
count -= 1
上面的代码,同样可以实现打印5行”Hello world!“。while每次判断的不再是表达式的值,而是count这个变量的值。当count的值为5、4、3、2、1时,即布尔属性为True时,都会执行下面的代码;当count值为0时,即布尔属性为False时,循环结束。这个逻辑与上一篇中的if语句是一致的,如果if后面跟随的表达式或变量的布尔属性为True,则执行下面的语句,如果为False,则会跳过(if下面缩进的语句)。