当前位置: 首页 > wzjs >正文

的网站建立网站开发人员职位晋升空间

的网站建立,网站开发人员职位晋升空间,龙岗网络推广深圳网站建设,合肥市建设网第三周 Day 5 🎯 今日目标 运用类与对象封装学生数据与操作实现添加、查询、删除、排序等功能使用魔术方法美化输出 📦 项目需求描述 我们要构建一个简易的学生成绩管理系统,功能包括: 添加学生(姓名、学号、成绩&…

第三周 Day 5

🎯 今日目标

  • 运用类与对象封装学生数据与操作
  • 实现添加、查询、删除、排序等功能
  • 使用魔术方法美化输出

📦 项目需求描述

我们要构建一个简易的学生成绩管理系统,功能包括:

  1. 添加学生(姓名、学号、成绩)
  2. 查询所有学生
  3. 查找指定学号学生
  4. 删除学生
  5. 按成绩排序输出
  6. 退出系统

🧬 设计类结构

class Student:def __init__(self, sid, name, score):self.sid = sidself.name = nameself.score = scoredef __str__(self):return f"{self.sid:<6} {self.name:<10} {self.score:<5}"class StudentManager:def __init__(self):self.students = []def add_student(self, sid, name, score):self.students.append(Student(sid, name, score))def show_all(self):print(f"{'学号':<6} {'姓名':<10} {'成绩':<5}")for stu in self.students:print(stu)def find_by_sid(self, sid):for stu in self.students:if stu.sid == sid:print("找到学生:", stu)returnprint("未找到该学号的学生。")def delete_by_sid(self, sid):for stu in self.students:if stu.sid == sid:self.students.remove(stu)print("删除成功!")returnprint("删除失败,未找到该学号。")def sort_by_score(self):self.students.sort(key=lambda x: x.score, reverse=True)print("成绩排序成功!")self.show_all()

🧪 主程序入口

def run():manager = StudentManager()while True:print("\n==== 学生成绩管理系统 ====")print("1. 添加学生")print("2. 显示所有学生")print("3. 查找学生")print("4. 删除学生")print("5. 按成绩排序")print("6. 退出")choice = input("请输入操作编号:")if choice == "1":sid = input("请输入学号:")name = input("请输入姓名:")try:score = float(input("请输入成绩:"))manager.add_student(sid, name, score)print("添加成功!")except:print("成绩格式不正确!")elif choice == "2":manager.show_all()elif choice == "3":sid = input("请输入要查找的学号:")manager.find_by_sid(sid)elif choice == "4":sid = input("请输入要删除的学号:")manager.delete_by_sid(sid)elif choice == "5":manager.sort_by_score()elif choice == "6":print("感谢使用,已退出。")breakelse:print("输入无效,请重新输入。")

👉 最后在底部加一句:

if __name__ == "__main__":run()

📝 今日练习任务

  1. 增加一个功能:根据姓名模糊搜索学生

    我们在 StudentManager 类中新增一个方法 search_by_name:

    def search_by_name(self, keyword):result = [stu for stu in self.students if keyword.lower() in stu.name.lower()]if result:print(f"{'学号':<6} {'姓名':<10} {'成绩':<5}")for stu in result:print(stu)else:print("未找到相关学生。")
    

    在主循环中添加对应的选项:

    elif choice == "7":keyword = input("请输入要查找的姓名关键词:")manager.search_by_name(keyword)
    

    别忘了在菜单中加入:

    print("7. 按姓名模糊查找")
    
  2. 为 Student 类增加一个 eq 方法,便于比较对象是否相同(学号相同即为同一人)
    我们在 Student 类中添加:

    def __eq__(self, other):if isinstance(other, Student):return self.sid == other.sidreturn False
    

    这个方法可以让我们用 == 比较两个 Student 对象是否代表同一位学生(通过学号)。


🧾 今日总结

技术点应用说明
类与对象将学生抽象为对象,提高代码清晰度和扩展性
魔术方法 str优化输出格式
排序函数 + lambda实现根据对象属性排序
结构设计思维体现类封装、方法划分、模块职责分离等理念

文章转载自:

http://mQKUzKFi.fbjqq.cn
http://dwoWd5l2.fbjqq.cn
http://ZiqzyQhV.fbjqq.cn
http://NZqkax7r.fbjqq.cn
http://FnGyNMfM.fbjqq.cn
http://CPflvhql.fbjqq.cn
http://oUZ7D3PA.fbjqq.cn
http://AxCM16ki.fbjqq.cn
http://aMn5pUmI.fbjqq.cn
http://gmg9ZqCr.fbjqq.cn
http://EhqeCg3p.fbjqq.cn
http://kRrZbaXt.fbjqq.cn
http://fvMo3a2A.fbjqq.cn
http://gm8ZUjdn.fbjqq.cn
http://bP1dGqdK.fbjqq.cn
http://evRrFDm6.fbjqq.cn
http://frEOx7Uz.fbjqq.cn
http://r0mkxnBX.fbjqq.cn
http://CDF4wArg.fbjqq.cn
http://gLPPKEz1.fbjqq.cn
http://tYlyxGgq.fbjqq.cn
http://1xAARzc8.fbjqq.cn
http://y6hoXPla.fbjqq.cn
http://W8A8vnU4.fbjqq.cn
http://UehINqQm.fbjqq.cn
http://bVtazw2K.fbjqq.cn
http://RwtZ7nqp.fbjqq.cn
http://k1Hfr0ei.fbjqq.cn
http://BGa6onwy.fbjqq.cn
http://bJJw3Chb.fbjqq.cn
http://www.dtcms.com/wzjs/671381.html

相关文章:

  • 通河县机场建设网站网站建设技术
  • 网站代运营推广照片制作
  • 山东手机响应式网站建设设计东莞网站推广运营公司
  • 廊坊seo网站管理网站建设吸引客户的
  • 郑州网站空间互联网站备案管理工作方案 工信部
  • 专业做网站关键词排名下掉保险网站建设公司
  • 做新房网站怎么弄品牌传播策略
  • 个人网站建设推广服务域名绿标免费申请
  • 英文网站支付怎么做wordpress使用php版本
  • 企业做网站需要哪些人员网站建设销售顾问开场白
  • 免费的网站后台网站建设初期工作方案
  • 北京市建设规划网站牡丹江住房和城乡建设厅网站
  • 高端网站建设费用预算哪些网站可以做ppt赚钱
  • wordpress网站多层循环调用文章陕西大型网站建设
  • 赛门仕博做网站怎么样在线制作图标免费
  • 网站模板开发推广 quot 网站开发 quot
  • 怎么免费注册网站手机对比参数配置
  • lamp网站开发七牛云cdn加速wordpress
  • 建立网站准备工作流程网页升级访问网页导航
  • 下列关于网站开发中搜索引擎排名优化建议
  • 找人做购物网站app 软件开发公司
  • 人人做全免费网站江苏苏州昨天出大事
  • 邢台市政建设集团网站蓝色大气网站源码
  • 广西备案工信部网站查看邮箱注册过的网站
  • 齐河县建设局网站知名做漫画网站
  • 做推广都有什么网站企业网站手机版模板
  • 注册账号自建网站163企业邮箱费用
  • 国外 设计网站做网站 怎么发布
  • 盘县网站开发网站规划设计报告
  • pk10代码网站开发小程序怎么放在桌面