它能够遍历任何序列的项,例如列表或字符串。
for iterating_var in sequence: statements(s)
如果序列包含表达式列表,则首先计算它。然后,将序列中的第一项分配给迭代变量iterating_var。接下来,执行语句块。将列表中的每一项分配给iterating_var,并执行语句块,直到耗尽整个序列为止。
#!/usr/bin/python for letter in 'Python': # First 示例 print 'Current Letter :', letter fruits=['banana', 'apple', 'mango'] for fruit in fruits: # Second 示例 print 'Current fruit :', fruit print "Good bye!"
执行上述代码时,将生成以下输出-
链接:https://www.learnfk.comhttps://www.learnfk.com/python/python-for-loop.html
来源:LearnFk无涯教程网
Current Letter : P Current Letter : y Current Letter : t Current Letter : h Current Letter : o Current Letter : n Current fruit : banana Current fruit : apple Current fruit : mango Good bye!
迭代每个项目的另一种方法是通过索引偏移量进入序列本身。下面是一个简单的示例-
#!/usr/bin/python fruits=['banana', 'apple', 'mango'] for index in range(len(fruits)): print 'Current fruit :', fruits[index] print "Good bye!"
执行上述代码时,将生成以下输出-
链接:https://www.learnfk.comhttps://www.learnfk.com/python/python-for-loop.html
来源:LearnFk无涯教程网
Current fruit : banana Current fruit : apple Current fruit : mango Good bye!
在这里,无涯教程得到了len()内置函数的帮助,该函数提供了tuple中的元素总数以及range()内置函数,以便为提供要迭代的实际序列。
Python支持将else语句与loop语句关联
如果ELSE语句与FOR循环一起使用,则当循环用完迭代列表时,将执行ELSE语句。
如果Else语句与While循环一起使用,则当条件变为False时,将执行Else语句。
下面的示例说明了else语句与for语句的组合,该语句搜索从10到20的素数。
#!/usr/bin/python for num in range(10,20): #在 10 到 20 之间迭代 for i in range(2,num): #迭代数的因数 if num%i == 0: #确定第一个因素 j=num/i #计算第二个因素 print '%d equals %d * %d' % (num,i,j) break #to move to the next number, the #first FOR else: # else part of the loop print num, 'is a prime number'
执行上述代码时,将生成以下输出-
链接:https://www.learnfk.comhttps://www.learnfk.com/python/python-for-loop.html
来源:LearnFk无涯教程网
10 equals 2 * 5 11 is a prime number 12 equals 2 * 6 13 is a prime number 14 equals 2 * 7 15 equals 3 * 5 16 equals 2 * 8 17 is a prime number 18 equals 2 * 9 19 is a prime number
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)