Python的循环语句有for和while语句,这里讲while语句。

Python中while语句的一般形式

while 条件判断 :

  语句

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

例入:用while计算1到100的总和。

#!/usr/bin/env python3
n = 100
sum = 0
counter = 1
while counter <= n:
    sum = sum + counter
    counter += 1
print("1 到 %d 之和为: %d" % (n,sum))
执行结果如下:
1 到 100 之和为: 5050

无限循环
我们可以通过设置条件表达式永不为False达到无限循环,例如:
#!/usr/bin/python3
var = 1
while var == 1 :  # 表达式永远为 true
   num = int(input("输入一个数字  :"))
   print ("你输入的数字是: ", num)
print ("Good bye!")

结果如下:

输入一个数字 :1
你输入的数字是: 1
输入一个数字

你可以使用CTRL +C退出当前的无限循环。

无限循环在服务器上客户端的实时请求非常有用。

 

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


break语句将跳出while的循环体,使循环结束。

例如:

var = 10                  
while var > 0:
   print ('当期变量值为 :', var)
   var = var -1
   if var == 5:
      break
print ("Good bye!")

执行结果如下:

当期变量值为 : 10
当期变量值为 : 9
当期变量值为 : 8
当期变量值为 : 7
当期变量值为 : 6
Good bye!

continue语句用来告诉Python跳过当次循环中剩下的语句,然后进行下一轮循环。

例如:

var = 10
while var > 0:
   var = var -1
   if var == 5:             # 变量为 5 时跳过输出
      continue
   print ('当前变量值 :', var)
print ("Good bye!")

执行结果如下:

当前变量值 : 9
当前变量值 : 8
当前变量值 : 7
当前变量值 : 6
当前变量值 : 4
当前变量值 : 3
当前变量值 : 2
当前变量值 : 1
当前变量值 : 0
Good bye!

在Python的while循环中会有whlie...else语句,其else语句只有在while正常结束时才会被执行,如果while循环被break语句结束,是不会执行else语句的。

例如:

var = 6
while var > 0:
   var = var -1
   if var == 3:             # 变量为 3 时跳过输出
    break
   print ('当前变量值 :', var)
else:
    print("Good bye!")

执行结果如下:

当前变量值 : 5
当前变量值 : 4