详解Python中for循环的使用方法

时间:2021-05-22

for循环在Python中有遍历所有序列的项目,如列表或一个字符串。
语法:

for循环语法如下:

for iterating_var in sequence: statements(s)

如果一个序列包含一个表达式列表,计算第一个。然后,在序列中的第一项被分配给迭代变量iterating_var。接着,语句块被执行。列表中的每个项目分配给iterating_var,并且statement块被执行,直到整个序列完成(到尾部)。
流程图:

例子:

#!/usr/bin/pythonfor letter in 'Python': # First Example print 'Current Letter :', letterfruits = ['banana', 'apple', 'mango']for fruit in fruits: # Second Example print 'Current fruit :', fruitprint "Good bye!"

当执行上面的代码,产生以下结果:

Current Letter : PCurrent Letter : yCurrent Letter : tCurrent Letter : hCurrent Letter : oCurrent Letter : nCurrent fruit : bananaCurrent fruit : appleCurrent fruit : mangoGood bye!

通过遍历序列索引:

通过每个项目进行迭代的一种替代方法是:通过索引偏移量序列本身。下面是一个简单的例子:

#!/usr/bin/pythonfruits = ['banana', 'apple', 'mango']for index in range(len(fruits)): print 'Current fruit :', fruits[index]print "Good bye!"

当执行上面的代码,产生以下结果:

Current fruit : bananaCurrent fruit : appleCurrent fruit : mangoGood bye!

在这里,我们采用内置函数len(),它计算元组元素的总数量以及range()内置函数给我们的实际遍历顺序。
循环使用else语句

Python支持与循环语句相关联的else语句。

  • 如果else语句与for循环使用,执行else语句时,循环已经迭代完成列表。
  • 如果在else语句使用while循环,当条件为假时,else语句被执行。

下面的例子演示了一个else语句,语句搜索素数从10到20的组合。

#!/usr/bin/pythonfor num in range(10,20): #to iterate between 10 to 20 for i in range(2,num): #to iterate on the factors of the number if num%i == 0: #to determine the first factor j=num/i #to calculate the second factor 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'

当执行上面的代码,产生以下结果:

10 equals 2 * 511 is a prime number12 equals 2 * 613 is a prime number14 equals 2 * 715 equals 3 * 516 equals 2 * 817 is a prime number18 equals 2 * 919 is a prime number

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章