综合实战插画

十课学完,散装的知识点攒了一堆。这一课玩一次大的:做一个"学生成绩小管家"——能录入成绩、查成绩、算平均分、找最高分。你会发现,之前学的每个知识点都是它的一块拼图。

一、项目长什么样

运行后是这样的菜单,输入数字选功能,输 0 退出:

1.录入成绩 2.查看全部 3.平均分 4.最高分 0.退出
请选择:1
姓名:小明
成绩:85
录入成功!

二、先设计,再动手

项目拼装示意

对照一下知识点地图:

用到的功能靠哪课的知识
存多个学生的姓名+成绩第九课:字典装进列表
每个功能一块代码第十课:函数
菜单反复出现第七课:while 循环
按选择执行不同功能第六课:if-elif-else
读入姓名成绩、打印结果第四课:input / print / f-string

三、完整代码

students = []   # 全班数据:一个装字典的列表

def add_student():
    name = input("姓名:")
    score = float(input("成绩:"))
    students.append({"姓名": name, "成绩": score})
    print("录入成功!")

def show_all():
    if not students:
        print("还没有数据,先录入吧")
        return
    for s in students:
        print(f"{s['姓名']}:{s['成绩']}分")

def show_avg():
    if not students:
        print("还没有数据,先录入吧")
        return
    avg = sum(s["成绩"] for s in students) / len(students)
    print(f"全班平均分:{avg:.1f}")

def show_best():
    if not students:
        print("还没有数据,先录入吧")
        return
    best = max(students, key=lambda x: x["成绩"])
    print(f"最高分:{best['姓名']} {best['成绩']}分")

while True:
    print("\n1.录入成绩 2.查看全部 3.平均分 4.最高分 0.退出")
    choice = input("请选择:")
    if choice == "1":
        add_student()
    elif choice == "2":
        show_all()
    elif choice == "3":
        show_avg()
    elif choice == "4":
        show_best()
    elif choice == "0":
        print("再见!")
        break
    else:
        print("没有这个选项,重选一下")
💡 代码解读:① if not students 是"列表是空的吗"的 Python 式写法,空列表算"假";② 每个函数开头都先判空,避免"没数据就求平均分"这种尴尬;③ 主循环是 while True + break 的经典菜单套路,背下来。

亲手把它敲进在线 Python 工具跑一遍,录几个成绩试试——这是你第一个"像模像样"的程序!

四、十一课知识地图

知识回顾

课标题一句话
第一课认识 Python知道它是什么、能干什么
第二课下载与安装把环境装到自己电脑上
第三课变量和数据类型数据的"盒子"和"种类"
第四课输入与输出程序和人说话
第五课运算符与表达式让程序算起来
第六课条件分支看情况办事
第七课循环重复的活交给电脑
第八课列表与元组一堆数据一个名字管
第九课字典与集合按键找值、自动去重
第十课函数给代码起名字,随叫随到
第十一课综合实战拼出第一个完整程序

五、学完之后去哪

  • 刷题巩固:本站"学考专区"有 200 道理论题和随机测试,检验基础;
  • 做小项目:给小管家加功能——按成绩排序、保存到文件、统计各分数段人数;
  • 继续深入:文件读写、异常处理、面向对象、爬虫、数据分析,每一个都是新世界的大门;
  • 书籍推荐:第一课推荐的《Python编程:从入门到实践》后半部分,正好衔接。
🎉 十一课全部完成!从"Python 是什么"到亲手做出成绩小管家,你已经是一名真正的 Python 初级程序员了。编程是门手艺——继续写、继续做,下一座高峰见!
More

相关教程