循环
4月7-8
Python 提供了 for 循环和 while 循环
循环类型 | 描述 |
---|---|
while | 在给定的判断条件作为true是执行循环体,是否退出循环体 |
for | 重复执行语句 |
循环控制语句
控制语句 | 描述 |
---|---|
break 语句 | 在语句块执行过程中终止循环,并且跳出循环整个循环 |
continue 语句 | 在语句块执行过程中终止当前循环,跳出该循环,执行下一次循环 |
pass 语句 | pass是空语句,是为了保持程序结构的完整性 |
while循环
python编程中while语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复相同的任务
语法
while 判断条件:
执行语句
实例1-100遍我错了
输出100次媳妇我错了
num = 1
while num <= 100:
print(f"媳妇我错了,{num}")
num += 1
print("语句执行结束")
媳妇我错了,100
语句执行结束
实例2-100的和
计算1-100的和
num = 1
summation = 0
while num <= 100:
print(f"这是我第一次相加{num}")
summation += num
num += 1
print(f"从1-100的和为:{summation}")
这是我第一次相加100
从1-100的和为:5050
实例3-100的奇偶和
计算1-100 偶数的和
num = 1
summation = 0
while num <= 100:
if num % 2 == 0:
summation += num
num += 1
print(summation)
2550
计算1-100奇数和
num1 = 1
summation1 = 0
while num1 <= 100:
if num1 % 2 != 0:
summation1 += num1
num1 += 2
print(summation1)
2500
break和continue语句
案例:有10辆汽车需要刷漆,一辆一辆刷,就相当于循环过程
break:当刷到第5辆,完成了当天的任务,刷漆的动作就要停止,这⾥就是break控制循环流程,即终⽌此循环
continue:我拿的是马自达的油漆,结果第6辆车是劳斯劳斯,所以直接跳过这辆,继续刷马自达,这⾥就是continue控制循环流程,即退出当前⼀次循环继⽽执⾏下⼀次循环代码
break 语句
终止循环,结束当前循环
实例4 break- 刷漆
num = 1
while num <= 10:
if num == 5:
break
num += 1
print(f"这是我刷的第{num}辆车")
print("完成任务")
这是我刷的第2辆车
这是我刷的第3辆车
这是我刷的第4辆车
这是我刷的第5辆车
完成任务
continue 语句
中断本次循环,进入下一次循环
实例5 continue- 刷漆
num = 1
while num <= 10:
if num == 6:
num += 1
print("这是一台劳斯莱斯")
continue
print(f"这是我今天刷的第{num}辆车")
num += 1
print("运行结束")
这是我今天刷的第1辆车
这是我今天刷的第2辆车
这是我今天刷的第3辆车
这是我今天刷的第4辆车
这是我今天刷的第5辆车
这是一台劳斯莱斯
这是我今天刷的第7辆车
这是我今天刷的第8辆车
这是我今天刷的第9辆车
这是我今天刷的第10辆车
运行结束
while嵌套循环
思考:和⼥朋友闹⽭盾⽣⽓了,⼥朋友说:道歉,说3遍“媳妇⼉,我错了”,还不够,还要做家务,而且持续三天,这个程序该怎么写?
实例6-嵌套
day = 1
while day <= 3:
sorry = 1
while sorry <= 3:
print(f"媳妇我错了,这是我的第{day}天,第{sorry}次道歉")
sorry += 1
print(f"我还做了家务{day}天")
day += 1
print("道歉完毕")
媳妇我错了,这是我的第1天,第1次道歉
媳妇我错了,这是我的第1天,第2次道歉
媳妇我错了,这是我的第1天,第3次道歉
我还做了家务1天
媳妇我错了,这是我的第2天,第1次道歉
媳妇我错了,这是我的第2天,第2次道歉
媳妇我错了,这是我的第2天,第3次道歉
我还做了家务2天
媳妇我错了,这是我的第3天,第1次道歉
媳妇我错了,这是我的第3天,第2次道歉
媳妇我错了,这是我的第3天,第3次道歉
我还做了家务3天
道歉完毕
实例7-300奇数和,去7的倍数
计算1-300 奇数的和,去除7的倍数
#法1
num = 1
summation = 0
while num <= 300:
if num % 2 != 0:
if num % 7 != 0:
print(num)
summation += num
num += 1
print(f"奇数的求和为:{summation}")
奇数的求和为:19413
#法2
num = 1
summation = 0
while num <= 300:
if num % 7 != 0:
print(num)
summation += num
num += 2
print(f"奇数的求和为:{summation}")
奇数的求和为:19413
实例8-九九乘法表
while 循环 九九乘法表
x = 1
while x <= 9:
y = 1
while y <= x: #外层执行几次,内层就执行几次
print(f"{x}X{y}={x*y}", end=" ")
y += 1
print(" ")
x += 1
1X1=1
2X1=2 2X2=4
3X1=3 3X2=6 3X3=9
4X1=4 4X2=8 4X3=12 4X4=16
5X1=5 5X2=10 5X3=15 5X4=20 5X5=25
6X1=6 6X2=12 6X3=18 6X4=24 6X5=30 6X6=36
7X1=7 7X2=14 7X3=21 7X4=28 7X5=35 7X6=42 7X7=49
8X1=8 8X2=16 8X3=24 8X4=32 8X5=40 8X6=48 8X7=56 8X8=64
9X1=9 9X2=18 9X3=27 9X4=36 9X5=45 9X6=54 9X7=63 9X8=72 9X9=81
forfor...in...循环
Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
for-in遍历的对象必须是可迭代对象
while循环的循环条件是自定义的,for循环无法定义循环条件
for循环是一种“轮询”机制。是对一批内容进行“逐个处理”
for语句
for 临时变量 in 待处理数据集:
重复执行代码
理论上来讲,for循环无法构建无限循环(待处理的数据集不可能无限大)
实例1-hellow word
#遍历字符串
for i in "hello word":
print("当前字母为:", i)
当前字母为: h
当前字母为: e
当前字母为: l
当前字母为: l
当前字母为: o
当前字母为:
当前字母为: w
当前字母为: o
当前字母为: r
当前字母为: d
range()语句
for循环本质上是遍历
序列类型
,但是,使用range
语句,可以获得一个简单的数字序列
语法:
#range(num)
num = 5
for i in range(num):
print(i)
# 获得一个从0开始,到num结束的数字序列(不含num本身)
# 例如range(5),获得的数据是[0,1,2,3,4]
#range(num1,num2)
num1 = 5
num2 = 8
for i in range(num1, num2):
print(i)
#获取一个从0开发,到num2结束的数字序列(不含num1本身)
#例如range(5,8),获得的数据是[5,6,7]
#range(num1,num2,step)
num1 = 7
num2 = 0
for i in range(num1, num2, -2):
print(i)
# 获取一个从num1开始,到num2结束的数字序列(不含num2本身)
# step 为步长,默认为1
# 例如range(7,0,2),获取到的数据是[1,3,5,7]
实例2-100的和
summation = 0
for i in range(1, 101):
summation += i
print(f"1-100的和等于:{summation}")
实例3-100奇偶数和
偶数
summation1 = 0
for i in range(1, 101):
if i % 2 == 0:
summation1 += i
print(f"100内的奇数和为:{summation1}")
100内的奇数和为:2550
奇数
#法1
summation2 = 0
for i in range(1, 100):
if i % 2 != 0:
summation2 += i
print(f"100内的奇数和为:{summation2}")
100内的奇数和为:2500
#法2
summation3 = 0
for i in range(1, 101, 2):
summation3 += i
print(f"100内的奇数和为:{summation3}")
100内的奇数和为:2500
for循环嵌套
生活中的嵌套
和女朋友吵架,每天道歉10遍,持续5天
for 临时变量 in 待处理数据集:
重复执行代码一
重复执行代码二
重复执行代码三
for 临时变量 in 待处理数据集:
重复执行代码三
重复执行代码三
重复执行代码三
实例4-我错了
- 坚持道歉5天
- 每天道歉10遍
for i in range(1,6):
print(f"这是我第{i}天道歉")
for j in range(1,11):
print(f"这是我{i}天,第{j}次吃道歉")
print(f"第{i}天道歉完毕")
print(f"我已经道歉了{i}天了,老婆不生气了")
for循环和while循环配合使用
for i in (1, 5):
print(f"这是我第{i}天道歉")
j = 1
while j <= 10:
print(f"这是我{i}天,第{j}次吃道歉")
j += 1
print(f"第{i}天道歉完毕")
print(f"我已经道歉了{i}天了。老婆不生气了")
实例5-九九乘法表
break和continue
while循环和for循环都是重复执行特定的操作,在这个过程中,回出现一些其他情况,让我们不得不
终止
或者跳过
-
跳过这次循环,进入下一次循环
-
终止当前循环
实例6-break 刷漆
break:当刷到第5辆,完成了当天的任务,刷漆的动作就要停止,这⾥就是break控制循环流程,即终⽌此循环
for i in range(1, 10):
print(f"这是我今天刷的第{i}辆车")
if i >= 5:
break
print(f"今天任务完成{i}")
实例7-continue刷漆
continue:我拿的是马自达的油漆,结果第5辆车是劳斯劳斯,所以直接跳过这辆,继续刷马自达,这⾥就是continue控制循环流程,即退出当前⼀次循环继⽽执⾏下⼀次循环代码
for i in range(1, 10):
if i == 5:
print("碰到劳斯莱斯")
continue
print("继续刷我的马自达")
综合案例:猜字谜
import random
num = random.randint(1, 10)
for i in range(1, 6):
result = int(input("\n请输入你猜的数字: "))
if num < result:
print("猜大了")
if num > result:
print("猜小了")
if num == result:
print(f"恭喜你猜对了: {num}")
break
print(f"很遗憾,再来一次,你还有{5 - i}次机会")
print(f"幸运数字为: {num}")
标签:20230408,Python,day5,range,while,num,print,100,循环
From: https://www.cnblogs.com/yuwen01/p/17298591.html