Python中的迭代遍历 for in

Posted 编程的朝圣之路

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python中的迭代遍历 for in相关的知识,希望对你有一定的参考价值。

遍历就是从头到尾依次从列表中获取数据,在循环体内部针对每一个元素,执行相同的操作。

在Python中为了提高列表的遍历效率,专门提供的迭代(iteration)遍历。

使用 for...in 就能够在 Python 中实现迭代遍历。

在 Python 中,for 循环可以遍历任何序列的项目,如列表、元组、字典以及字符串。

本文只用列表作简单举例,涉及到个别数据类型的特殊用法,我们后面再补充。

for...in 循环流程图

for基础用法

语法格式:

# for 循环内部使用的变量 in 列表
for name in name_list:
    循环内部针对列表元素进行操作
    print(name)

尽管 Python 的列表中可以存储不同类型的数据,但是在开发中,更多的应用场景是用列表存储相同类型的数据。

通过迭代遍历,在循环体内部,针对列表中的每一项元素,执行相同的操作。

实例

fruits = [\'banana\', \'apple\',  \'mango\']
for fruit in fruits:
    print("当前水果 : %s" % fruit)
#当前水果 : banana
#当前水果 : apple
#当前水果 : mango

我们也通过序列索引来进行迭代循环。

fruits = [\'banana\', \'apple\',  \'mango\']
for index in range(len(fruits)):
    print(\'当前水果 : %s\' % fruits[index])
#当前水果 : banana
#当前水果 : apple
#当前水果 : mango

我们使用了内置函数 len() 和 range()。

函数 len() 返回列表的长度,即元素的个数。

函数 range() 返回一个序列的数,用于生成一系列连续整数,多用于 for 循环中。

循环使用 else 语句

else 中的语句会在循环正常执行完的情况下执行,即 for循环不是通过 break 跳出而中断的,while … else 也是一样。

实例

# 迭代 10 到 20 之间的数字
for num in range(10, 20):
    # 根据因子迭代
    for i in range(2, num):
        if num % i == 0:
            j = num/i
            print(\'%d 等于 %d * %d\' % (num, i, j))
            break
    # 循环的 else 部分
    else:
        print(\'%d是一个质数\' % num)

结果

10 等于 2 * 5
11是一个质数
12 等于 2 * 6
13是一个质数
14 等于 2 * 7
15 等于 3 * 5
16 等于 2 * 8
17是一个质数
18 等于 2 * 9
19是一个质数

编程的朝圣之路

以上是关于Python中的迭代遍历 for in的主要内容,如果未能解决你的问题,请参考以下文章

谈谈python中的遍历

python中的for循环相当于scratch中的啥循环?

python中的for i in range怎么用

python中的for i in range怎么用

[Python] 迭代器是什么?你每天在用的for循环都依赖它!

python:迭代