Python 嵌套列表与使用

嵌套列表是指一个列表中包含其他列表作为元素的数据结构。嵌套列表可以有任意层级的嵌套,即一个列表中可以包含其他列表,而这些列表又可以包含其他列表,以此类推。

如:

nested_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

# 访问嵌套列表中的元素
print(nested_list[0])  # 输出:[1, 2, 3]
print(nested_list[1][2])  # 输出:6

# 修改嵌套列表中的元素
nested_list[2][1] = 10
print(nested_list)  # 输出:[[1, 2, 3], [4, 5, 6], [7, 10, 9]]

# 迭代访问嵌套列表中的元素
for sublist in nested_list:
    for item in sublist:
        print(item, end=' ')
    print()

# 输出:
# 1 2 3
# 4 5 6
# 7 10 9

练习:保存5个学生,3门课成的成绩,并统计每个学生的平均成绩和每门课的最高分和最低分。

"""
example036 - 保存5个学生,3门课成的成绩,
并统计每个学生的平均成绩和每门课的最高分和最低分

Author: 不在同一频道上的呆子
Date: 2024/1/27
"""
import random

names = ['张三', '李四', '王五', '小明', '小红']
courses = ['语文', '数学', '英语']
# scores = [86, 92, 69, 86, 92, 69, 86, 92, 69, 86, 92, 69, 86, 92, 69, 86, 92, 69]
# scores = [
#     [86, 92, 69],
#     [86, 92, 69],
#     [86, 92, 69],
#     [86, 92, 69],
#     [86, 92, 69],
#     [86, 92, 69]
# ]
scores = [[random.randrange(50, 101) for _ in range(len(courses))] for _ in range(len(names))]
# print(scores)

for i, name in enumerate(names):
    for j, course in enumerate(courses):
        print(f'{name}的{course}成绩:{scores[i][j]}')

# 统计每个学生的平均成绩
for i, name in enumerate(names):
    print(f'{name}平均成绩:{sum(scores[i]) / len(courses):.1f}')

# 统计每门课的最高分和最低分
for j, course in enumerate(courses):
    temp = [scores[i][j] for i in range(len(names))]
    print(f'{course}的最高分:{max(temp)}')
    print(f'{course}的最低分:{min(temp)}')

你可能感兴趣的:(python,开发语言)