Python for循环语句

前面我们学习了while循环语句,for循环语句跟while差不多。

for 变量 in range(start,stop,step):

为了方便解释,for i in range (x,y,z)

当z>0时,x一直增加,到x>=y时,循环停止

当z<0时,x一直减少,到x<=y时,循环停止

如果x已经>或已经<y了,那么循环一次也不执行


for 循环变量 in range(stop):

这里start默认为0,step默认为1

例如 for i in range (4):

          print(i)

结果: 0 1 2 3

当i到达4时候,循环停止,输出0123


for 循环变量 in range (start,stop)

这里默认step为1

当start大于stop时,程序不执行

例如:for i in range(2,5)

          print(i)

结果:2 3 4

一直逼近stop值,但不等于stop值


for循环的退出

 第一:当满足x>=y时,循环自动退出

第二:可以用break

for i in range(4):

  print(i)

  if i%2==1:

    break

print("结束:",i)

结果:

0

1

结束:1

如果i除2取余1就结束


案例:计算s=a+aa+aaa+……n个a,其中a为1~9,n为自己输入

a=0

while a<=0 or a>=10:

    a=input("输入a值:")

    a=int(a)

n=0

while n<=0:

     n=input("输入n值:")

     n=int(n)

m=0

s=0

for i in range(n):

     m=10*m+a

     s=s+m 

     if i<n-1: #注意if和s上下对齐

        print(m,end="+")

     else:

        print(m,end="=")

print(s)

an的输入用input,同时用while来限制an的取值范围,如果a超过1~9就会进入while循环,再次要求输入input,来确保an的值

在for循环中,s为总量,m=10*m+a,例如a=3,m每次循环就是,3 33 333 3333 ,s是让3 33 333 n个3相加。if语句,如果i小于n-1就在数字后面"+"这个字符串,这里for循环语句的取值范围是0到n-1(n-1取的到,n取不到),也就是当i等于n-1时,进入else,输出"=",最后print输出s总量


在for循环中的注意事项,第一for循环是自动变化的,我们人为添加变化公式,会出现逻辑混乱如:

for c in range(1,5,2):

    print(c)

    c=c+1

结果:1 3 可以看出c=c+1无用,不成立


第二:当step=0时会陷入死循环,无法进行程序

第三,for d inrange(2,n)里面d永远不可能输出n的,因为括号里的n取不到,如

n=input("数值:")

n=int(n)

for d in range (2,n):

   if n%d==0:

      break

if d==n-1:

   print("这是素数")

else:

   print("这不是素数")

for循环里,n是取不到的,所以if后面应该为d==n-1,因为d==n根本不可能,n根本取不到,这里就是要我们注意for循环括号里的取值范围

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值