for循环问题,初学别见笑

for循环问题,初学别见笑

>>> for n in range( 2, 10 ) :
...     for x in range( 2, n ) :
...         if n % x == 0 :
...             print n, 'equals', x, '*', n/x
...             break
...     else:
...         print n, 'is a prime number'

>>> for n in range( 2, 10 ) :
...     for x in range( 2, n ) :
...             if n % x == 0 :
...                     print n, 'equals', x, '*', n/x
...                     break
...             else:
...                     print n, 'is a prime number'
有什么区别?
两个
else:
...         print n, 'is a prime number'
不一样,请学习python的基本语法部分
这是if  else的匹配问题。
在Python中不是按照就近匹配的,而是根据缩进深度来匹配的。
第一个else是一级缩进深度(可能是的,因为没有找到与之匹配的if),第二个else是二级缩进深度,与if n % x == 0 :匹配。
我前天才开始学习Python,可能是C语言学的多的,有些不太适应。
不过谢la