illidanX 发表于 2021-11-16 23:11:08

关于视频里面的一个问题。

for x in range(2,10):
    for y in range(2,x):
      if x % y ==0 :
            print(x,"=",y,"*",x // y)
            break
    else:
            print(x,"是一个质数")

当X为2,在for y in range(2,2) 中 y 应该是没有值的,为什么还能 x % y ?不会报错~~

myqf123 发表于 2021-11-16 23:39:53

当X为2,并没有执行for y in range(2,x):
      if x % y ==0 :
            print(x,"=",y,"*",x // y)
            break
而是执行了else:
            print(x,"是一个质数")
所以不会报错

illidanX 发表于 2021-11-17 15:29:27

多谢大佬~~~有点理清了~~   只要 x % y != 0 都执行else
页: [1]
查看完整版本: 关于视频里面的一个问题。