You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中如何将一个列表的字符串与另一个列表的整数最简单配对?

嘿,刚接触Python就动手做项目真的超棒!针对你需要存储人名和测试分数、做数据处理的需求,我来给你一步步讲解具体实现~

解决Python存储学生成绩并处理的方案

一、选择合适的数据结构

因为人名和分数是一一对应的配对数据,推荐用列表套字典或者列表套元组来存储,两种方式都很适合新手理解:

方式1:列表套字典(更直观,字段清晰)

# 创建存储学生成绩的列表,每个元素是一个字典,包含姓名和分数
student_scores = [
    {"name": "张三", "score": 85},
    {"name": "李四", "score": 92},
    {"name": "王五", "score": 78}
]

方式2:列表套元组(更简洁)

# 每个元组的第一个元素是姓名,第二个是分数
student_scores = [
    ("张三", 85),
    ("李四", 92),
    ("王五", 78)
]

二、输出每个学生的姓名和分数

遍历列表就能轻松输出每个人的成绩,两种数据结构的遍历方式略有不同:

针对字典列表的遍历

print("学生成绩明细:")
for student in student_scores:
    # 通过字典的键来获取对应的值
    print(f"姓名:{student['name']},分数:{student['score']}")

针对元组列表的遍历

print("学生成绩明细:")
# 直接拆分元组里的姓名和分数变量
for name, score in student_scores:
    print(f"姓名:{name},分数:{score}")

三、计算平均分

先把所有分数提取出来求和,再除以学生总数即可:

针对字典列表的平均分计算

# 用生成器表达式提取所有分数并求和
total_score = sum(student["score"] for student in student_scores)
# 计算平均分,保留两位小数更美观
average_score = total_score / len(student_scores)
print(f"\n本次测试平均分:{average_score:.2f}")

针对元组列表的平均分计算

total_score = sum(score for name, score in student_scores)
average_score = total_score / len(student_scores)
print(f"\n本次测试平均分:{average_score:.2f}")

四、扩展:添加新的学生成绩

如果后续需要补充新数据,直接用append()方法就行:

# 字典列表方式添加
student_scores.append({"name": "赵六", "score": 90})

# 元组列表方式添加
# student_scores.append(("赵六", 90))

内容的提问来源于stack exchange,提问作者nathaniel01

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 04:09:46