php中文网

为什么字典提取不及格学生信息失败?

php中文网

不及格学生信息提取受阻

想要使用字典提取不及格学生的姓名和成绩,但代码却无法正常运行。

分析代码:

students = ({"赵,60"},{"钱,34"},{"孙,89"},{"李,56"},{"周,90"})
for student in students:
    if (students [1] < 60):
       name = students [0]
       score = students [1]
print("姓名:{}".format(name),"成绩:{}".format(score))

可能的错误原因在于:

  • 数据格式混乱

    此处将学生信息存储在字典中,但字典键值对的格式不正确。正确格式应为 {"姓名": 分数},而不是 "姓名,分数"。

  • 索引错误

    students 是一个字典,无法通过索引获得特定值。因此,无法访问 students [1]。

修改后代码

更正后的代码如下:

students = [{"赵": 60}, {"钱": 34}, {"孙": 89}, {"李": 56}, {"周": 90}]

for student in students:
    name = list(student.keys())[0]
    score = list(student.values())[0]
    if score < 60:
        print("姓名:{},成绩:{}".format(name, score))

运行结果

姓名:钱,成绩:34

以上就是为什么字典提取不及格学生信息失败?的详细内容,更多请关注php中文网其它相关文章!