|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
for n in range(2, 10):
for x in range(2, n):
if n % x == 0:
print(n, '=', x, '*', n//x)
break
else:
print(n, '是一个素数')
哪位大神能给详细讲讲,这个看不懂,主要是嵌套不明白,谢谢!
特别是 for x in range(2, n): 它是怎么运作的?
range 函数生成一个整数序列,如下代码打印出序列中的所有元素:
- >>>print(list(range(2, 10)))
- [2, 3, 4, 5, 6, 7, 8, 9]
复制代码
而 for 循环就是将这个序列中的元素依次取出,进行循环,例如 for i in range(2, 10) 第一次取出 2,第二次 取出 3 ...... 以此类推
而 for 循环嵌套 for 循环,就是外部循环每执行一次,都在 for 内部在进行一次完整的内部 for 循环
例如你的代码,假设当 外部循环到 n = 5 时,内部for 循环就要执行 2、3、4 三次循环,
n = 6 时,内部 for 循环要执行 2、3、4、5 四次循环,以此类推
这里 for - else 结构,简单理解就是只要在 for 循环中不遇到 break,那么就会执行 else 的代码
|
|