遍历列表-for循环
列表中存储的元素可能非常多,如果想一个一个的访问列表中的元素,可能是一件十分头疼的事。那有没有什么好的办法呢?当然有!使用 for循环
假如有一个食物名单列表,通过 for循环 将列表中的食物名称都打印出来
# 定义一个食物名单列表foods = ['potato', 'tomato', 'noodles', 'apple', 'pizza']# 循环访问foods列表for food in foods: print(food)
输出:
potato tomato noodles apple pizza
for循环 将foods列表中的元素依次输出了出来
for food in foods: 这行代码表示将foods列表中的元素依次取出,每次次元素的值赋给变量food;本句代码最后以冒号结尾
print(food) 本行代码之前有四个字符的 缩进 ,表示这行代码属于 for food in foods: 的代码块
for循环每次从列表中取出一个元素后,都会进入代码块中执行一遍,即输出元素的名称;直到将列表所有的元素都遍历一次后,循环停止
# 定义一个食物名单列表foods = ['potato', 'tomato', 'noodles', 'apple', 'pizza']# 循环访问foods列表for food in foods: print(food)# 循环之外的代码print('循环已经完毕')print('循环已经完毕') 的前面没有缩进,说明它不属于for循环块中的代码;所以,当for循环完毕后,会接着执行下面的这句代码
输出:
potato
tomato
noodles
apple
pizza
循环已经完毕
其中,变量 food 是一个临时变量,可以随意取名称;不过建议取有意义的名称,在这里用foods表示食物列表,用food表示列表中的食物,方便理解
循环也可以嵌套使用
假如小明喜欢一些食物,这些食物名称被存储到foods1列表中;小红喜欢另一些食物,这些食物名称被存储到foods2中;现在想知道小明与小红所喜欢的食物是否有相同的,则可用如下方式:
# 小明喜欢的食物列表 foods1 = ['potato', 'tomato', 'noodles', 'apple', 'pizza']# 小红喜欢的食物列表foods2 = ['chocolate', 'pizza', 'maize', 'watermelon']# 通嵌套循环寻找出两个列表中相同的食物名称for food1 in foods1: for food2 in foods2: if food1 == food2: print('小明和小红共同喜欢的食物是', food1)
输出:
小明和小红共同喜欢的食物是 pizza
for food2 in foods2: 前面有缩进,说明它是 for food1 in foods1: 块中的代码;第一外循环从小明喜欢的食物列表中依次取出食物名称,然后进行自身的代码块中;第二行代码依次遍历小红喜欢的食物列表,然后进行循环体(代码块),然后判断foods1中的第一个元素与foods2中的第一个元素是否一样,foods1中的第一个元素与foods2中的第二个元素是否一样,……,foods1中的第一个元素与foods2中的第四个元素是否一样,如果一样,则执行打印 print('小明和小红共同喜欢的食物是', food1) ;接着判断foods1中的第二个元素与foods2中的第1个元素是否一样,……,foods1中的第二个元素与foods2中的第四个元素是否一样,如果一样,则执行打印 print('小明和小红共同喜欢的食物是', food1) ……直到判断到foods1中的第五与foods2的所有元素比较一次后,嵌套循环执行完毕
新闻热点
疑难解答