欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python-for循环与while循环

程序员文章站 2022-10-06 11:45:01
while 循环 格式: while 条件 为 True: 代码块 请输入你的年龄:11 猜小了 问题来了,如果while的条件没有控制好,那么while循环就会成为死循环 while + break 请输入你的年龄:11 猜小了 请输入你的年龄:18 恭喜你猜对了 while +continue ......

while 循环

格式:

while 条件 为 true:

代码块
while true:
    rayn_age = 18
    age = input('请输入你的年龄:')
    age = int(age)
    if age == rayn_age:
        print('恭喜你答对了')
    elif age > rayn_age:
        print('猜大了')
    else:
        print('猜小了')
    break
请输入你的年龄:11
猜小了

问题来了,如果while的条件没有控制好,那么while循环就会成为死循环

while + break

while true:
    rayn_age = 18
    age = input('请输入你的年龄:')
    age = int(age)
    if age ==rayn_age:
        print('恭喜你猜对了')
        break  ## 直接终止本层循环
    elif age > rayn_age:
        print('你猜大了')
    else:
        print('猜小了')
请输入你的年龄:11
猜小了
请输入你的年龄:18
恭喜你猜对了

while +continue

打印1-100的整数,且不打印50

count = 0
while count <101:
    if count == 50:
        count +=1
        continue  ## 本层级下面的代码行都不执行,就是中断本层级的循环,外层循环正常循环。
    print(count,end=' ') # end=' ' 表示取消打印自动换行
    count +=1
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 

while 循环的嵌套

count = 0
dic = {0:'铅笔一只',1:'钢笔一只',2:'橡皮擦一个'} #奖励品可以用字典来展示,这样用户只要输入key值就可以自动索引到奖品。
while count <3:
    rayn_age = 18
    age = input('请输入你的年龄:')
    age = int(age)
    if age == rayn_age:
        print('恭喜你,猜对了,有奖励哦')
        # 这个循环是选择奖励品的判断循环
        while true:
            print(f'请选择奖励:{dic}') 
            chiose = input('请选择奖励:')
            chiose = int(chiose)
            if chiose == 1:
                print('权限不够,请重新选择!')
            else:
                print(f'你选择了{dic[chiose]},请取走')
                break
        break
    elif age > rayn_age:
        print('猜大了')
    else:
        print('猜小了')
    count +=1
    j = 3 - count
    print(f'你还有{j}次机会')
请输入你的年龄:11
猜小了
你还有2次机会
请输入你的年龄:20
猜大了
你还有1次机会
请输入你的年龄:18
恭喜你,猜对了,有奖励哦
请选择奖励:{0: '铅笔一只', 1: '钢笔一只', 2: '橡皮擦一个'}
请选择奖励:1
权限不够,请重新选择!
请选择奖励:{0: '铅笔一只', 1: '钢笔一只', 2: '橡皮擦一个'}
请选择奖励:2
你选择了橡皮擦一个,请取走

for循环

for 循环的循环次数受限于容器类型的长度,而while循环的循环次数需要自己控制。for循环也可以按照索引取值

比如把1-100的数值全部取出来,那用while循环还要我们自己添加控制条件,而for循环不需要。

for i in range(1,101):
    print(i,end=' ')
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 

for + break

rayn_list = ['read','run','rap','sing']
for i in rayn_list:
    if i == 'rap':
        break  ##直接终止循环
    print(i)
read
run

for + continue

rayn_list = ['read','run','rap','sing']
for i in rayn_list:
    if i == 'rap':
        continue  ##除了‘rap’层级不执行外,其他层级循环继续执行。
    print(i)
read
run
sing