请问关于python if else的缩进问题

sum = 0
for i in range(2, 200):
    for j in range(2, i):
        if i % j == 0:
            break
    else:
        sum += i
print(sum)

 这个一段求素数和的程序请问一下python中,else的缩进是可以在if前面么?这个语句的逻辑是怎么执行的?

 

这个    else:是对应for的

if 是如果的意思,else是否则的意思,

else 可以和if使用,也可以和for 使用。看你的需求

sum = 0
for i in range(2, 200): #
    for j in range(2, i):
        if i % j == 0: # 如果 i%j ==0 的话就会break break 是停止循环的意思。
            break
    else: # else 是否则的意思。 if如果不成立就会执行else。
        sum += i
print(sum)