遍历列表元素
如果想逐个取出列表中的元素,可以使用for
循环的,有以下两种做法。
方法一(推荐):
items = ['Python', 'Java', 'Go', 'Kotlin']
for item in items:
print(item)
方法二:如果需要获取列表中每个元素所在的索引,推荐使用 enumerate
函数遍历列表获取索引:
提示:enumerate 函数接收一个可迭代的序列,本质上返回了一个枚举对象,其中对象里每个元素都是一个元组,包含了传入元素的元素的下标和值,所以遍历的时候可以同时取出下标和值两个变量。
items = ['Python', 'Java', 'Go', 'Kotlin']
for index, item in enumerate(items):
print(index, item)
方法三:也可以使用 range
函数达到遍历索引的效果:
items = ['Python', 'Java', 'Go', 'Kotlin']
# 如果 range 函数只传入一个参数,例如 range(4),相当于传入 range(0, 4),第一个参数默认值是 0
for index in range(len(items)):
print(items[index])
二维列表
二维列表是一个元素为列表的列表,也可以叫嵌套列表,它可以用来标识二维数组、数学中的矩阵等数据结构。由于 Python 语言没有限定列表中的元素必须是相同的数据类型,也就是说一个列表中的元素可以任意的数据类型,当然也包括列表。例如:我们想保存 5 个学生 3 门课程的成绩,可以定义一个保存 5 个元素的列表保存 5 个学生的信息,而每个列表元素又是 3 个元素构成的列表,分别代表 3 门课程的成绩,我们就需要创建一个二维列表来表示,代码如下:
students = []
for i in range(0, 5):
scores = []
for j in range(0,3):
scores.append(0)
students.append(scores)
print(students) # [[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]]
访问二维列表中的元素
二维列表跟列表一样,也是一个可变的数据类型,我们还可以通过以下方式来访问、修改二维列表中的元素:
students = []
for i in range(0, 5):
scores = []
for j in range(0,3):
scores.append(0)
students.append(scores)
# 索引第 2 个学生的第 3 门成绩
value = students[1][2]
print(value) # 0
students[1][2] = 100
value2 = students[1][2]
print(value2) # 100
二维列表的遍历
my_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
for row in my_list:
for element in row:
print(element, end=' ')
print()
#1 2 3
#4 5 6
#7 8 9