第六篇:循环语句 - while和for

循环语句就是在符合条件的情况下。重复执行一个代码段。Python中的循环语句有while和for。

简单的while循环

while是一个条件循环语句,与if一样,他也有条件表达式。如果条件为真,while中的代码就会一直循环执行,直到循环条件不再为真才停止。

    

语法:while 条件:

     <条件为真(True),执行代码块>

count = 0
while count <= 2:
    print('count={},第{}次循环开始'.format(count,count+1))
    count += 1
    print('第{}次循环结束'.format(count))
    print('*'*100)

while循环嵌套

if中可以再嵌套if,那么while中也可以嵌套while循环,从而实现一些特殊的效果。

语法:while 条件:

     <条件为真(True),执行代码块>

      while 条件:

     <条件为真(True),执行代码块>

while - else语句

while-else在条件语句为false时执行else语句块。

语法: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循环

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正常迭代完,才会执行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的作用是,在循环体内遇到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。

注意: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语句是一个空操作,在执行的时候不会产生任何反应;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

 

posted @ 2019-05-22 18:39  码迷-wjz  阅读(598)  评论(0编辑  收藏  举报