零基础 学 python开发 (Genius套餐A)八

本文详细解析了Python中的for循环语句,包括其基本语法、与while循环的区别,以及通过具体案例展示了如何利用for循环计算数值和。适合初学者及需要巩固循环语句使用的开发者。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

夜光序言:

 

 

乐师说,古风是一刹心如止水、倏然弦惊。

挑一丝清弦,奏一曲离合悲欢错杂弹;

 

 

 

 

 

正文:

# 夜光:2.5 for 循环语句 
 
# 2.5.1 目标 
# 在前面看到 while 循环的使用方法,除此之外还有一种 for 循环语句,for 在有些场合使用会更加简单。# 教学目标就是 for 循环的使用,并比较 for 与 while 的差异。


# 2.5.2 for 循环语句 
# for 循环是根据 range 产生的序列来进行的,分下面几种情况。
# 1、有 start、end、step 
# for 循环变量 in range(start,stop,step): 
#  body 
# 循环体 boty 的语句向右边缩进,不写 start 时 start=0,不写 step 时 step=1
# (1) 如果 step>0, 那么变量会从 start 开始增加,沿正方向变化,一直等于或者超过 stop
# 后循环停止。如果一开始就 start>=stop 则已经到停止条件,循环一次也不执行。
# (2) 如果 step<0, 那么变量会从 start 开始减少,沿负方向变化,一直负方向等于或者
# 超过 stop 后循环停止。如果一开始就 start<=stop 则已经到停止条件,循环一次也不执行。
 





# 2、 只有 stop 值 


for 循环变量 in range(stop): 
 body 
循环变量的值从 0 开始,按 step=1 的步长增加,一直逼近 stop,但不等于 stop,只到
stop 的前一个值,就是 stop-1
for i in range(4):
 print(i)



# 结果:
0
1
2
3
注意 i 不会到达 4
3、 只有 start,stop 值 
for 循环变量 in range(start,stop): 
 body 
(1) 如果 stop<start 则不执行
for i in range(5,3):
 print(i)
不执行,因为 i=5 已经在正方向超过 3
(2) 如果 stop>=start,循环变量的值从 start 开始,按 step=1 的步长增加,一直逼近 stop,
但不等于 stop,只到 stop 的前一个值,就是 stop-1
for i in range(2,5):
 print(i)
结果:
2
3
4
注意 i 不会到达 5











# 2.5.3 for 循环的退出 
# 1、 正常退出 
# 循环执行完毕后,即循环变量等于或者超过 stop 后,循环结束或者称为退出。例如:


for i in range(4):
 print(i)
print("last: ",i)


# 输出
0
1
2
3
last: 3
执行 4 次后退出,注意退出后 i=3 不是 i=4


#2、 break 中途退出 
# 一些情况下要循环中途退出,可以采用 break,例如:
for i in range(4):
 print(i)
 if i%2==1:
 break
print("last: ",i)
0
1
last: 1
当执行到 i=1 时就 break 退出,退出后 i=1


# 2.5.4 【案例】计算数值和 
# 1、案例描述 
# 计算 s=a+aa+aaa+.....+aa....a 的和,其中 a 为[1,9]之内一个整数,最后一项有 n 个 a,a与 n 由键盘输入。
 
# 2、案例分析 
# 设计一个项目变量 m,开始 m=0,之后 m=10*m+a 就是 a,再次 m=10*m+a 就是 aa,如此就可以产生每个项目,累加到 s 中就可以了。


# 3、案例代码 

#输入 a
a=0
while a<=0 or a>=10:
 a=input("Enter a[1,9]:")
 a=int(a)
#输入 a
n=0
while n<=0:
 n=input("Enter n:")
 n=int(n)
m=0
s=0
for i in range(n):
 m=10*m+a
 s=s+m
 if i<n-1:
 print(m,end="+")
 else:
 print(m,end="=")
print(s)

# 结果:
Enter a[1,9]:5
Enter n:8
5+55+555+5555+55555+555555+5555555+55555555=61728390

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值