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

yipeiwu_com6年前Python基础

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

for循环语法如下:

for iterating_var in sequence:
  statements(s)

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

2015514114025864.jpg (388×351)

 例子:

#!/usr/bin/python

for letter in 'Python':   # First Example
  print 'Current Letter :', letter

fruits = ['banana', 'apple', 'mango']
for fruit in fruits:    # Second Example
  print 'Current fruit :', fruit

print "Good bye!"

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

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!"

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

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的组合。

#!/usr/bin/python

for 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 * 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

相关文章

解决pyinstaller打包exe文件出现命令窗口一闪而过的问题

解决pyinstaller打包exe文件出现命令窗口一闪而过的问题

用pyinstaller打包的exe文件打开时,命令窗口一闪而过,并且未出现GUI界面,也看不到错误信息,然后去网上搜相关的信息,最多的两种说法: 1.添加raw_input()或者os...

python对csv文件追加写入列的方法

python对csv文件追加写入列的方法

python对csv文件追加写入列,具体内容如下所示: 原始数据 [外链图片转存失败(img-zQSQWAyQ-1563597916666)(C:\Users\innduce\Ap...

python中实现精确的浮点数运算详解

为什么说浮点数缺乏精确性? 在开始本文之前,让我们先来谈谈浮点数为什么缺乏精确性的问题,其实这不是Python的问题,而是实数的无限精度跟计算机的有限内存之间的矛盾。 举个例子,假如说我...

Python根据已知邻接矩阵绘制无向图操作示例

Python根据已知邻接矩阵绘制无向图操作示例

本文实例讲述了Python根据已知邻接矩阵绘制无向图操作。分享给大家供大家参考,具体如下: 有六个点:[0,1,2,3,4,5,6],六个点之间的邻接矩阵如表格所示,根据邻接矩阵绘制出相...

详细解析Python中的变量的数据类型

详细解析Python中的变量的数据类型

 变量是只不过保留的内存位置用来存储值。这意味着,当创建一个变量,那么它在内存中保留一些空间。 根据一个变量的数据类型,解释器分配内存,并决定如何可以被存储在所保留的内存中。因...