Python Learning 列表的更多操作及示例代码列表的更多操作及示例代码
遍历列表遍历列表-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: 块中的代码;第一外循环从小明喜欢的食物列表中依次取出食