'for'循环如何在python中工作?

时间:2014-09-23 15:51:48

标签: python loops for-loop

我是python的新手(在C,C ++之后)。我一直在学习,直到我遇到'for x in'循环。具体来说,请以程序列出素数的示例为例:

 for num in range(10,20):
   for i in range(2,num):
      if num%i == 0:   
         j=num/i       
         print ('%d equals %d * %d' % (num,i,j))
         break
   else:                 
      print (num, 'is a prime number')

前两行代码究竟发生了什么?代码是如何流动的?请详细说明。

1 个答案:

答案 0 :(得分:1)

for num in range(10,20):

这会创建一个range对象(代表10到19之间的数字),num遍历它

  for i in range(2,num):

这会创建一个range对象(代表数字2到num-1,包括在内),i遍历它

与:

大致相同
for (int num = 0; num < 20; ++num) {
   for (int i = 2; i < num; ++i) {

用C语言编写,不再含糊不清。

在循环结束时,如果循环没有遇到else语句,则运行break子句。