赞
踩
for循环在Python中有遍历所有序列的项目,如列表或一个字符串。
语法:
for循环语法如下:
1
2
for iterating_varin sequence:
statements(s)
如果一个序列包含一个表达式列表,计算第一个。然后,在序列中的第一项被分配给迭代变量iterating_var。接着,语句块被执行。列表中的每个项目分配给iterating_var,并且statement块被执行,直到整个序列完成(到尾部)。
流程图:
例子:
1
2
3
4
5
6
7
8
9
10
#!/usr/bin/python
for letterin 'Python':# First Example
print 'Current Letter :', letter
fruits= ['banana','apple','mango']
for fruitin fruits:# Second Example
print 'Current fruit :', fruit
print "Good bye!"
当执行上面的代码,产生以下结果:
1
2
3
4
5
6
7
8
9
10
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!
通过遍历序列索引:
通过每个项目进行迭代的一种替代方法是:通过索引偏移量序列本身。下面是一个简单的例子:
1
2
3
4
5
6
7
#!/usr/bin/python
fruits= ['banana','apple','mango']
for indexin range(len(fruits)):
print 'Current fruit :', fruits[index]
print "Good bye!"
当执行上面的代码,产生以下结果:
1
2
3
4
Current fruit : banana
Current fruit : apple
Current fruit : mango
Good bye!
在这里,我们采用内置函数len(),它计算元组元素的总数量以及range()内置函数给我们的实际遍历顺序。
循环使用else语句
Python支持与循环语句相关联的else语句。
如果else语句与for循环使用,执行else语句时,循环已经迭代完成列表。
如果在else语句使用while循环,当条件为假时,else语句被执行。
下面的例子演示了一个else语句,语句搜索素数从10到20的组合。
1
2
3
4
5
6
7
8
9
10
#!/usr/bin/python
for numin range(10,20):#to iterate between 10 to 20
for iin 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'
当执行上面的代码,产生以下结果:
1
2
3
4
5
6
7
8
9
10
10 equals2 * 5
11 is a prime number
12 equals2 * 6
13 is a prime number
14 equals2 * 7
15 equals3 * 5
16 equals2 * 8
17 is a prime number
18 equals2 * 9
19 is a prime number
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。