循环语句就是在符合条件的状况下。重复执行一个代码段。Python中的循环语句有while和for。ui
while是一个条件循环语句,与if同样,他也有条件表达式。若是条件为真,while中的代码就会一直循环执行,直到循环条件再也不为真才中止。spa
语法:while 条件:code
<条件为真(True),执行代码块>orm
count = 0 while count <= 2: print('count={},第{}次循环开始'.format(count,count+1)) count += 1 print('第{}次循环结束'.format(count)) print('*'*100)
if中能够再嵌套if,那么while中也能够嵌套while循环,从而实现一些特殊的效果。对象
语法:while 条件:
blog
<条件为真(True),执行代码块>element
while 条件:字符串
<条件为真(True),执行代码块>input
while-else在条件语句为false时执行else语句块。it
语法:while 条件:
<条件为真(True),执行代码块>
else:
<条件为假(Fale),执行代码块>
count = 0 while count <= 2: print('count={},第{}次循环开始'.format(count,count+1)) count += 1 print('第{}次循环结束'.format(count)) print('*'*100) else: print('count={},count > 2,不能进入while循环'.format(count))
for是Python中另一个循环语句,提供了Python中最强大的循环结构,它能够循环遍历任何序列项目,如一个列表或者一个字符串。(sequence能够是列表元组集合,若是是字典只能遍历keys,没法遍历values)
语法:for <element> in <sequence>:
<statements>
fruitBasket = ['苹果','香蕉','李子'] print('这篮子有:',end=' ') for i in fruitBasket: print('{}'.format(i),end=',')
for - else语句只有for正常迭代完,才会执行else中的代码块。不然不执行。
语法:for <element> in <sequence>:
<statements>
else:
<statements>
for element in range(9): pass # if element == 2: # print('异常退出:可迭代对象还未迭代完,被强制退出。') # break else: print('for循环正常退出') print(element) #在循环体外可访问接收迭代返回值的变量,不过获得的是最后一个返回值。
在循环语句中使用break的做用是,在循环体内遇到break则会跳出循环,终止循环,而且不论循环的条件是否为真,都再也不继续循环下去。
count = 0 while True: print('count={},第{}次循环开始'.format(count,count+1)) count += 1 print('第{}次循环结束'.format(count)) print('*'*100) if count > 2: print('count={},count > 2,退出while循环'.format(count)) print('*'*100) break for i in range(10): print(i) if i == 5: break
若是想要一种效果,退出当前循环,再继续执行下一次循环。就可使用continue。
注意:continue和break经常使用于while和for循环中。
count = 0 while count <= 2: if count == 1: print('count={},count = 5,退出当前while循环'.format(count)) print('*'*100) count += 1 continue print('count={},第{}次循环开始'.format(count, count + 1)) count += 1 print('第{}次循环结束'.format(count)) print('*' * 100) for i in range(3): if i == 1: continue print(i)
pass语句的使用表示不但愿任何代码或者命令的执行;pass语句是一个空操做,在执行的时候不会产生任何反应;pass语句常出如今if、while、for等各类判断或者循环语句中。
小技巧:一个状态可退出全部while循环
status = True while status: print('layer1') while status: print('layer2') while status: print('layer3') status = input('是否退出循环 yes|no:') if status == 'yes':status=False