Python循环语句-while循环

定义简单实例1简单实例2whilel练习题while-else用法


定义

Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。其基本形式为:

1while 判断条件(condition):
2    执行语句(statements)……

执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。当判断条件假 false 时,循环结束。

  • 流程图:
  • 执行过程
  • 实例
1count = 0
 2while (count 9):
 3   print 'The count is:', count
 4   count = count + 1
 5print ("Good bye!")
 6#执行的结果
 7The count is: 0
 8The count is: 1
 9The count is: 2
10The count is: 3
11The count is: 4
12The count is: 5
13The count is: 6
14The count is: 7
15The count is: 8
16Good bye!
简单实例1
1num = 1
 2while num <= 5:
 3    print(num)
 4    num += 1
 5#运行结果:
 61
 72
 83
 94
105

最简单的while循环当属数数了。例如,下面的while循环从1数到5:
首先定义了变量num并给其初始值1。接下来的while循环被设置成这样:只要num小于或等于5,就接着运行循环体代码。循环体中的代码打印变量num的值,再使用代码num+=1(代码num=num+1的简写)将其值加1。只要满足条件num<=5,python就接着运行这个循环。由于1小于5,因此Python打印1,并将num加1,使其为2;由于2小于5,因此Python打印2,并将num加1,使其为3,以此类推。一旦num大于5,循环将停止,整个程序也将结束运行。

简单实例2

让用户选择何时退出

1prompt = "\n输入一些内容,系统将原样返回给你:"
2prompt += "\n键入 'quit' 结束此程序运行。"
3message = ''
4while message != 'quit':
5    message = input(prompt)
6    print(message)

我们定义了一条信息提示,告诉用户他有两个选择:要么输入一条消息,要么输入’quit’退出程序。接下来我们创建了变量message来接收用户输入的内容。Python执行while语句时,需要将message的值与’quit’进行比较。如果用户输入的不是’quit’,程序将打印出用户输入,否则将终止程序运行。

whilel练习题
  • 求1~100之间数字的和
1# 定义记录循环次数的变量
 2i = 0
 3# 定义结果变量
 4result = 0
 5while i <= 100:    
 6    result+=i    
 7    # 处理计数器    
 8    i+=1
 9# 输出结果
10print('1~100之间的数字之和为:%d' %result)

结果为:5050

  • 使用 while 循环实现用户登录程序
1_user = "jackie"
 2_passwd = "cib123"
 3counter = 0      #记录次数所用
 4while counter 3: 
 5    username = input("Username: ")
 6    password = input("Password: ")
 7    if username == _user and password == _passwd:
 8        print("Welcome %s login ..." % _user)  #占位符
 9        break
10    else:
11        print("Invalid username or password !")
12    counter += 1
13else: #else 如果遇到不正常退出,就不会执行,正常退出就会继续执行
14    print("你错的太多了 。。。")

执行结果:

1......
2Invilade username or password !
3Username: s
4Password: s
5Invilade username or password !
6你错的太多了 。。。
7Process finished with exit code 0
while-else用法

else 可以在while和for循环中运用,else和while或for搭配使用,不再是条件判断的含义。而是当while条件不成立时,直接跳出while循环,执行else输出如

1count = 0
2while count > 12:
3   if True:
4      print('Yes')
5      break
6   count += 1
7else:
8   print('No')

执行结果NO

1a = 0
2while a 3   print('loop',a)
4   a = a + 1
5else:
6   print('well done!')#没有break的情况下,循环没有被打断
1执行结果
2loop 0
3loop 1
4loop 2
5loop 3
6loop 4
7loop 5
8well done!