Python中的迭代遍历 for in

枫铃3年前 (2021-09-30)Python254

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

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

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

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

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

for…in 循环流程图
在这里插入图片描述
for基础用法

语法格式:

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

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

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

实例

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
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 也是一样。

实例

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
# 迭代 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格式化字符串知多少

Python格式化字符串知多少

字符串格式化相当于字符串模板。也就是说,如果一个字符串有一部分是固定的,而另一部分是动态变化的,那么就可以将固定的部...

python中如何将字符串连接在一起,多倍的字符串如何输出

在python中,如果有多个字符串,想要连接在一起,或者说想要拼接在一起该如何操作,在此记录下。 1...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。