python-for循环与while循环
程序员文章站
2022-04-28 14:34:58
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