Python 3 – for循环语句

Python 3 – for循环语句

Python中的for语句具有迭代任何序列(例如列表或字符串)项的能力。

语法

for iterating_var in sequence:
   statements(s)

如果序列包含表达式列表,则首先进行评估。然后,将序列中的第一项分配给迭代变量 iterating_var 。接下来,执行语句块。将列表中的每个项分配给 iterating_var ,并执行语句块,直到整个序列用尽。

流程图

Python 3 - for循环语句

range()函数

内置函数range()是迭代数字序列的正确函数。它生成算术级数的迭代器。

示例

>>> range(5)
range(0, 5)
>>> list(range(5))
[0, 1, 2, 3, 4]

示例

range()生成一个迭代器以接受从0开始到n-1的整数。要获取序列的列表对象,需要将其转换为list()。现在,可以使用for语句迭代此列表。

>>> for var in list(range(5)):
   print (var)

输出

这将产生以下输出。

0
1
2
3
4

示例

#!/usr/bin/python3

for letter in 'Python':     # 遍历字符串序列
   print ('Current Letter :', letter)
print()
fruits = ['banana', 'apple',  'mango']

for fruit in fruits:        # 遍历列表序列
   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/python3

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循环一起使用,则仅在for循环正常终止(而不是遇到break语句)时执行else块。

  • 如果else语句与while循环一起使用,则当条件变为false时执行else语句。

示例

以下示例说明了else语句与for语句的组合,该语句在给定列表中搜索偶数。

#!/usr/bin/python3

numbers = [11,33,55,39,55,75,37,21,23,41,13]

for num in numbers:
   if num%2 == 0:
      print ('该列表包含偶数')
      break
else:
   print ('该列表不包含偶数')

输出

当执行以上代码时,会产生以下结果 −

该列表不包含偶数

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程