yooooly 发表于 2019-11-5 19:55:10

python循环的一个问题

n,x = map(int,input().split())
a = 0;
for i in range(1,n+1):
    if i/1000000 ==x:
      a +=1
      if int(i/1000000) ==x:
            a +=1
            if int(i/100000) == x:
                a +=1
                if int(i/10000) == x:
                  a +=1
                  if int(i/1000) ==x:
                        a +=1
                        if int(i/100) ==x:
                            a+=1
                            if int(i/10) == x:
                              a+=1
                              if i == x:
                                    a+=1
print(a)
我想让第一个条件不满足进入下一个条件而不是结束循环该怎么改呢

冬雪雪冬 发表于 2019-11-5 20:04:42

相同缩进就行了

heidern0612 发表于 2019-11-5 20:05:01

elif

zltzlt 发表于 2019-11-5 20:38:01

减少缩进,用 elif:

n,x = map(int,input().split())
a = 0;
for i in range(1,n+1):
    if i/1000000 ==x:
      a +=1
    elif int(i/1000000) ==x:
      a +=1
    elif int(i/100000) == x:
      a +=1
    elif int(i/10000) == x:
      a +=1
    elif int(i/1000) ==x:
      a +=1
    elif int(i/100) ==x:
      a+=1
    elif int(i/10) == x:
      a+=1
    elif i == x:
      a+=1
print(a)

乘号 发表于 2020-2-27 14:43:12

用elif
页: [1]
查看完整版本: python循环的一个问题