While循环是哟中利用条件语句,不断的执行某一段代码块,达到批量操做输出等一系列的操做,直到条件不知足或者被强制退出为止。html
其工做流程以下: (图片来源菜鸟教程:http://www.runoob.com/python/python-while-loop.html )python
咱们来看一个例子:less
current_number = 10 while current_number <= 20: print("Current number is : " + str(current_number)) current_number += 1 print("Final number: " + str(current_number)) ''' 输出: Current number is : 10 Current number is : 11 Current number is : 12 Current number is : 13 Current number is : 14 Current number is : 15 Current number is : 16 Current number is : 17 Current number is : 18 Current number is : 19 Current number is : 20 Final number: 21 '''
咱们能够看到 变量current_number 的初始值为10, 在小于等于20的状况下,不断的被打印,被增加,直至增加到21的时候,跳出了循环。oop
咱们也能够使用标志,好比True,False 等布尔值来进行循环:ui
flag = True while flag: number = int(input("Input a number less than 10:\n")) if number < 10: flag = True else: flag = False print("The game is end...") ''' 输出: Input a number less than 10: 2 Input a number less than 10: 11 The game is end... Final number: 21 '''
使用 break 退出循环。在while循环中,你能够经过特定的条件语句,选择终止循环,再也不继续运行余下的代码。spa
flag = True while flag: city = input("Input a city which you like: \n" + "Input 'Q' to quit...\n") if city == 'Q': break else: print("You like " + city) print("Thanks for your information.") ''' 输出: Input a city which you like: Input 'Q' to quit... ShangHai You like ShangHai Input a city which you like: Input 'Q' to quit... HangZhou You like HangZhou Input a city which you like: Input 'Q' to quit... Q Thanks for your information. '''
使用 continue 再也不继续执行余下的代码块,返回到循环开头,继续下一轮循环。code
number = 0 while number <= 10: if number % 2 == 0: print("The number is even: " + str(number)) number += 1 continue print("Next...") else: number += 1 ''' 输出: The number is even: 0 The number is even: 2 The number is even: 4 The number is even: 6 The number is even: 8 The number is even: 10 '''
循环也能够和else 一块儿使用:orm
number = 0 while number <= 10: if number % 2 == 0: print("The number is even: " + str(number)) number += 1 continue print("Next...") else: number += 1 else: print("The number is equal or more than 10, stop loop.") ''' 输出: The number is even: 0 The number is even: 2 The number is even: 4 The number is even: 6 The number is even: 8 The number is even: 10 The number is equal or more than 10, stop loop. '''
使用while 操做列表 Listhtm
peoples = ['Ralf', 'Clark', 'Leon'] while peoples: people = peoples.pop() print(people) ''' 输出: Leon Clark Ralf '''
peoples = ['Ralf', 'Clark', 'Leon', 'Terry'] while 'Terry' in peoples: peoples.remove('Terry') print(peoples) ''' 输出: ['Ralf', 'Clark', 'Leon'] '''
while循环语句能够解决程序中须要重复执行的操做。其循环执行的次数由循环条件肯定,当循环条件知足时,重复执行某程序段,直到循环条件不成立为止。反复执行的程序段称为循环体,循环条件必需要在循环体中改变,不然可能会出现无限循环的结果blog