循环语句
在 Python 中,常见的循环语句有 while 循环和 for 循环。while 循环是一种在满足条件的情况下重复执行代码块的循环,而 for 循环是一种对序列进行迭代的循环。
while循环语句
条件满足可以一直循环。
语法:
while 条件:
条件满足时,做事件1
条件满足时,做事件n
注:条件需要得到布尔类型,True或者是False
示例:
计算输出1到100的和。
i = 1
sum = 0
while i <= 100:
sum += i
i += 1
print(f"1到100的和:{
sum}")
运行结果:1到100的和:5050
while循环的嵌套使用
while 条件1:
满足条件1时,做事情1
满足条件1时,做事情n
while 条件2:
满足条件2时,做事情1
满足条件2时,做事情n
示例:
坚持跳绳100天,每天10个,第100天挑战成功。
i = 1
while i <= 100:
print(f"今天是开始跳绳的第{
i}天")
# 内层循环的控制变量
j = 1
while j <= 10:
print(f"今天的跳的第{
j}个")
j += 1
print("加油努力坚持")
i += 1
print(f"坚持到{
i - 1}天,挑战100天每天10个跳绳成功。")
运行结果:
输出内容不换行
在输出内容后面加上end=''即可
示例:
print("Hello", end='')
print("World", end='')
运行结果:HelloWorld
输出内容对齐
\t 效果等同于tab键,它可以让多行字符串对齐
示例:
print("Hello\tWold")
print("Hi\t\tWorld")
运行结果:
综合案例:
输出打印一个九九乘法表。
使用while循环打印九九乘法表
for循环
轮询,逐个处理,直到结束。
语法:
for 临时变量 in 待处理的数据集(序列):
循环满足条件时执行的代码
注:
①for循环不能构建无限循环。
②待处理的数据集(即序列类型)可以是字符串、列表、元组等。
示例:
# 遍历name中有多少个a
name = "I am a hardworking girl"
count = 0
for x in name:
if x == "a":
count += 1
print(f"{
name}中共有:{
count}个a。")
运行结果:I am a hardworking girl中共有:3个a。
range 语句
①range(num)
获取0开始到num结束的数字序列,不包含num本身
示例:range(3)取得0,1,2
②range(num1,num2)
获取num1开始到num2结束的数字序列,不包含num2本身
示例:range(1,3)取得1,2
③range(num1,num2,step)
示例:获取num1开始到num2结束的数字序列,不包含num2本身,
且数字之间的步长以step为准,step默认为1
示例:range(5,10,2)取得5,7,9
综合案例:
# range(num)
for x in range(10):
print(f"{
x}\t", end='')
print() # print(),输出一个换行
# range(num1,num2)
for x in range(5, 10):
print(f"{
x}\t", end='')
print() # print(),输出一个换行
# range(num1,num2,step)
for x in range(5, 10, 2):
print(f"{
x}\t", end='')
print() # print(),输出一个换行
# 打印10个加油
for x in range(10):
print(f"加油\t", end='')
运行结果:
for循环的嵌套使用
for 临时变量 in 待处理的数据集(序列):
循环满足条件时执行的代码1
循环满足条件时执行的代码n
for 临时变量 in 待处理的数据集(序列):
循环满足条件时执行的代码1
循环满足条件时执行的代码n
示例:
输出打印一个九九乘法表。
使用for循环打印九九乘法表
continue和break中断循环
continue:中断本次循环,直接进入下一次(临时中断)
break:中断整个循环(永久中断)
注意点:嵌套使用时也是只能对本层循环生效,不对上层循环产生影响。
示例:
for i in range(1, 5):
print(f'今天是第{
i}天')
continue
print(f'今天是第{
i}天') # 总共循环4次,此句都不会执行
for i in range(1, 5):
print(f'明天是第{
i}天')
break
print(f'明天是第{
i}天') # 总共循环1次,此句不会执行
运行结果:
综合案例:
使用for循环结合continue,break完成奖学金发放