Python学习之编写学生信息管理系统

  • 实例要求:
  • 1.学生基本信息包括学号、姓名、性别、成绩
  • 2.将学号设置为主键值,根据学号进行相应的“增、删、查、改”;
  • 实例分析:
  • 封装“增、删、查、改”功能函数,在main函数中调用这些函数即可;
  • 1.添加学生基本信息:
# 增
def add_stu():# 声明全局变量global stu_infostu_id = int(input("学号:"))stu_name = input("姓名:")stu_sex = input("性别:")stu_score = int(input("成绩:"))# 保证不能有重复的学号存在for stu in stu_info:if stu["stu_id"] == stu_id:print("您输入的学生已经存在,添加失败!!!")return Falsestu = {"stu_id": stu_id,"stu_name": stu_name,"stu_sex": stu_sex,"stu_score": stu_score}stu_info.append(stu)print("添加成功!!!")return True
  • 2.删除学生基本信息:
# 删
def del_stu():# 声明全局变量global stu_infostu_id = int(input("请输入所删除的学生学号:"))for stu in stu_info:if stu["stu_id"] == stu_id:stu_info.remove(stu)return Trueprint("您输入的学生学号有误,删除失败!!!")return False
  • 3.查询学生基本信息:
# 查
def search_stu():# 声明全局变量global stu_infostu_id = int(input("请输入要查询的学生学号:"))for stu in stu_info:if stu["stu_id"] == stu_id:print("stu_id:", stu["stu_id"])print("stu_name:", stu["stu_name"])print("stu_sex:", stu["stu_sex"])print("stu_score:", stu["stu_score"])return Trueprint("您输入的学生学号不存在,查询失败!!!")return False
  • 4.修改学生基本信息:
# 改
def modify_stu():# 声明全局变量global stu_infostu_id = int(input("请输入要修改的学生学号:"))for stu in stu_info:if stu["stu_id"] == stu_id:stu["stu_id"] = int(input("新的学号:"))stu["stu_name"] = input("新的姓名:")stu["stu_sex"] = input("新的性别:")stu["stu_score"] = int(input("新的成绩:"))return Trueprint("您输入的学生学号不存在,修改失败!!!")return False
  • 示例代码:
# 学生信息管理系统
from typing import List, Any# 定义全局变量stu_info: list[Any] = []def print_menu():print("-----------------------------------------------------")print("-------------欢迎使用学生信息管理系统---------------------")print("-----------------1.遍历学生信息------------------------")print("-----------------2.添加学生信息------------------------")print("-----------------3.删除学生信息------------------------")print("-----------------4.查询学生信息------------------------")print("-----------------5.修改学生信息------------------------")print("-----------------6.退出系统---------------------------")print("-----------------------------------------------------")# 增
def add_stu():# 声明全局变量global stu_infostu_id = int(input("学号:"))stu_name = input("姓名:")stu_sex = input("性别:")stu_score = int(input("成绩:"))# 保证不能有重复的学号存在for stu in stu_info:if stu["stu_id"] == stu_id:print("您输入的学生已经存在,添加失败!!!")return Falsestu = {"stu_id": stu_id,"stu_name": stu_name,"stu_sex": stu_sex,"stu_score": stu_score}stu_info.append(stu)print("添加成功!!!")return True# 删
def del_stu():# 声明全局变量global stu_infostu_id = int(input("请输入所删除的学生学号:"))for stu in stu_info:if stu["stu_id"] == stu_id:stu_info.remove(stu)return Trueprint("您输入的学生学号有误,删除失败!!!")return False# 查
def search_stu():# 声明全局变量global stu_infostu_id = int(input("请输入要查询的学生学号:"))for stu in stu_info:if stu["stu_id"] == stu_id:print("stu_id:", stu["stu_id"])print("stu_name:", stu["stu_name"])print("stu_sex:", stu["stu_sex"])print("stu_score:", stu["stu_score"])return Trueprint("您输入的学生学号不存在,查询失败!!!")return False# 改
def modify_stu():# 声明全局变量global stu_infostu_id = int(input("请输入要修改的学生学号:"))for stu in stu_info:if stu["stu_id"] == stu_id:stu["stu_id"] = int(input("新的学号:"))stu["stu_name"] = input("新的姓名:")stu["stu_sex"] = input("新的性别:")stu["stu_score"] = int(input("新的成绩:"))return Trueprint("您输入的学生学号不存在,修改失败!!!")return Falsedef main():while True:print_menu()ch = int(input("请输入您的选择:"))match ch:case 1:print(stu_info)case 2:add_stu()case 3:del_stu()case 4:search_stu()case 5:modify_stu()if ch == 6:print("欢迎下次使用本学生信息管理系统!!!")breakreturn Nonemain()
  • 运行结果:
-----------------------------------------------------
-------------欢迎使用学生信息管理系统---------------------
-----------------1.遍历学生信息------------------------
-----------------2.添加学生信息------------------------
-----------------3.删除学生信息------------------------
-----------------4.查询学生信息------------------------
-----------------5.修改学生信息------------------------
-----------------6.退出系统---------------------------
-----------------------------------------------------
请输入您的选择:2
学号:1001
姓名:小王
性别:女
成绩:88
添加成功!!!
-----------------------------------------------------
-------------欢迎使用学生信息管理系统---------------------
-----------------1.遍历学生信息------------------------
-----------------2.添加学生信息------------------------
-----------------3.删除学生信息------------------------
-----------------4.查询学生信息------------------------
-----------------5.修改学生信息------------------------
-----------------6.退出系统---------------------------
-----------------------------------------------------
请输入您的选择:2
学号:1005
姓名:小李
性别:男
成绩:100
添加成功!!!
-----------------------------------------------------
-------------欢迎使用学生信息管理系统---------------------
-----------------1.遍历学生信息------------------------
-----------------2.添加学生信息------------------------
-----------------3.删除学生信息------------------------
-----------------4.查询学生信息------------------------
-----------------5.修改学生信息------------------------
-----------------6.退出系统---------------------------
-----------------------------------------------------
请输入您的选择:2
学号:1003
姓名:小吴
性别:女
成绩:99
添加成功!!!
-----------------------------------------------------
-------------欢迎使用学生信息管理系统---------------------
-----------------1.遍历学生信息------------------------
-----------------2.添加学生信息------------------------
-----------------3.删除学生信息------------------------
-----------------4.查询学生信息------------------------
-----------------5.修改学生信息------------------------
-----------------6.退出系统---------------------------
-----------------------------------------------------
请输入您的选择:1
[{'stu_id': 1001, 'stu_name': '小王', 'stu_sex': '女', 'stu_score': 88}, {'stu_id': 1005, 'stu_name': '小李', 'stu_sex': '男', 'stu_score': 100}, {'stu_id': 1003, 'stu_name': '小吴', 'stu_sex': '女', 'stu_score': 99}]
-----------------------------------------------------
-------------欢迎使用学生信息管理系统---------------------
-----------------1.遍历学生信息------------------------
-----------------2.添加学生信息------------------------
-----------------3.删除学生信息------------------------
-----------------4.查询学生信息------------------------
-----------------5.修改学生信息------------------------
-----------------6.退出系统---------------------------
-----------------------------------------------------
请输入您的选择:5
请输入要修改的学生学号:1005
新的学号:1002
新的姓名:小李
新的性别:男
新的成绩:98
-----------------------------------------------------
-------------欢迎使用学生信息管理系统---------------------
-----------------1.遍历学生信息------------------------
-----------------2.添加学生信息------------------------
-----------------3.删除学生信息------------------------
-----------------4.查询学生信息------------------------
-----------------5.修改学生信息------------------------
-----------------6.退出系统---------------------------
-----------------------------------------------------
请输入您的选择:1
[{'stu_id': 1001, 'stu_name': '小王', 'stu_sex': '女', 'stu_score': 88}, {'stu_id': 1002, 'stu_name': '小李', 'stu_sex': '男', 'stu_score': 98}, {'stu_id': 1003, 'stu_name': '小吴', 'stu_sex': '女', 'stu_score': 99}]
-----------------------------------------------------
-------------欢迎使用学生信息管理系统---------------------
-----------------1.遍历学生信息------------------------
-----------------2.添加学生信息------------------------
-----------------3.删除学生信息------------------------
-----------------4.查询学生信息------------------------
-----------------5.修改学生信息------------------------
-----------------6.退出系统---------------------------
-----------------------------------------------------
请输入您的选择:3
请输入所删除的学生学号:1001
-----------------------------------------------------
-------------欢迎使用学生信息管理系统---------------------
-----------------1.遍历学生信息------------------------
-----------------2.添加学生信息------------------------
-----------------3.删除学生信息------------------------
-----------------4.查询学生信息------------------------
-----------------5.修改学生信息------------------------
-----------------6.退出系统---------------------------
-----------------------------------------------------
请输入您的选择:1
[{'stu_id': 1002, 'stu_name': '小李', 'stu_sex': '男', 'stu_score': 98}, {'stu_id': 1003, 'stu_name': '小吴', 'stu_sex': '女', 'stu_score': 99}]
-----------------------------------------------------
-------------欢迎使用学生信息管理系统---------------------
-----------------1.遍历学生信息------------------------
-----------------2.添加学生信息------------------------
-----------------3.删除学生信息------------------------
-----------------4.查询学生信息------------------------
-----------------5.修改学生信息------------------------
-----------------6.退出系统---------------------------
-----------------------------------------------------
请输入您的选择:4
请输入要查询的学生学号:1003
stu_id: 1003
stu_name: 小吴
stu_sex: 女
stu_score: 99
-----------------------------------------------------
-------------欢迎使用学生信息管理系统---------------------
-----------------1.遍历学生信息------------------------
-----------------2.添加学生信息------------------------
-----------------3.删除学生信息------------------------
-----------------4.查询学生信息------------------------
-----------------5.修改学生信息------------------------
-----------------6.退出系统---------------------------
-----------------------------------------------------
请输入您的选择:6
欢迎下次使用本学生信息管理系统!!!
  • 本示例代码,仅供参考

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/88545.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

华为云云耀云服务器L实例评测 | 云服务器搭建自己的gitlab代码仓库手把手教学

📋 前言 🖱 博客主页:在下马农的碎碎念🤗 欢迎关注🔎点赞👍收藏⭐️留言📝✍ 本文由在下马农原创,首发于CSDN📆 首发时间:2023/09/26📅 最近更新时…

spring cloud gateway谓词工厂 Predicate Factory

Predicate Factory 称为谓词工厂或断言工厂 默认的工厂类都位于 org.springframework.cloud.gateway.handler.predicate 包下 根据版本不同有多有少 本文spring-cloud.version2021.0.5 spring-cloud-gateway3.1.4 官方文档:https://docs.spring.io/spring-cloud-gat…

【LeetCode热题100】--234.回文链表

234.回文链表 快慢指针: 将链表的后半部分反转(改变链表结构),然后将前半部分和后半部分进行比较。比较完成后我们应该将链表恢复原样。虽然不需要恢复也能通过测试用例 使用快慢指针在一次遍历中找到链表的中间位置&#xff1a…

由iframe引起的无法返回上一页的问题

问题描述 使用的框架: vue 页面里面嵌套了 iframe, 在设置iframe的src后,不知道为什么使用 router.back() 无法跳转到上一页,必须使用 router.go(-2) 才可以。但问题是有的时候用 router.go(-1) 可以,有的时候却不行。因为iframe…

Spring整合RabbitMQ——消费者

1.配置consumer xml配置文件 2. 实现MessageListener接口 并重写onMessage方法

GPT4科研实践技术与AI绘图

GPT对于每个科研人员已经成为不可或缺的辅助工具,不同的研究领域和项目具有不同的需求。如在科研编程、绘图领域:1、编程建议和示例代码: 无论你使用的编程语言是Python、R、MATLAB还是其他语言,都可以为你提供相关的代码示例。2、数据可视化…

Mysql高级——数据库设计规范(2)

8. ER模型 ER 模型中有三个要素,分别是实体、属性和关系。 实体,可以看做是数据对象,往往对应于现实生活中的真实存在的个体。在 ER 模型中,用矩形来表示。实体分为两类,分别是强实体和弱实体。强实体是指不依赖于其…

激活国企数据资产:管好用好释放要素价值

在大数据时代,数据体量呈现爆炸式增长态势。如何将企业在日常运营中积累和沉淀的大量用户与交易数据进行有效利用,对于支持企业业务运转、进行有效决策、处理突发风险事件至关重要。2023年,随着《中共中央 国务院关于构建数据基础制度更好发挥…

ACP值不值得考?考了有用吗?

ACP是什么? PMI-ACP是由美国项目管理协会PMI颁发的针对敏捷项目管理的专业认证。目前已覆盖全球206个国家和地区,为计算机IT、制造、医疗保健等各行各业的项目成果交付提供了一系列方法和实践,是国际上敏捷领域中知识方法最全面、含金量最高…

OpenAI 更新 ChatGPT:支持图片和语音输入【附点评】

一、消息正文 9月25日消息,近日OpenAI宣布其对话AI系统ChatGPT进行升级,添加了语音输入和图像处理两个新功能。据OpenAI透露,这些新功能将在未来两周内面向ChatGPT Plus付费用户推出,免费用户也将很快可以使用这些新功能。这标志着ChatGPT继续朝着多模态交互的方向发展,为用户提…

液氮超低温保存法的原理

细菌保存是有效保存活体微生物群体,使细菌不死、不衰、不变,便于研究和应用。保存细菌的方法有很多。保存原理是利用干燥、低温、隔离空气的方法,降低微生物菌株的代谢速度,使菌株的生命活动处于半永久性休眠状态,从而…

CentOS下安装MySQL 8.1及备份配置

1 卸载原来的MySQL版本 移除之前部署的mysql软链接 # unlink /etc/init.d/mysql # unlink /usr/bin/mysql2 下载最新的MySQL版本 https://dev.mysql.com/downloads/mysql/8.0.html 我这里直接把地址放在这里:https://cdn.mysql.com//Downloads/MySQL-8.1/mysql…

Windows10操作系统部署AD

windows 10 安装配置AD 一、启用AD 1.打开控制面板—>程序—>启用或关闭windows功能 2.勾选Active Directory Lightweight Directory Services(Active Directory 轻型目录服务) 注:不同版本中英文显示有区别,认准AD字样就…

leetcodetop100 (22) 反转链表

给你单链表的头节点 head ,请你反转链表,并返回反转后的链表 简单的用一个动态数组Arraylist记录,然后倒序遍历赋值给一个新的链表,这种空间复杂度是o(n),估计需要优化。 采用双指针; 我们可以申请两个指针&#xf…

机器人中的数值优化|【四】L-BFGS理论推导与延伸

机器人中的数值优化|【四】L-BFGS理论推导与延伸 往期内容回顾 机器人中的数值优化|【一】数值优化基础 机器人中的数值优化|【二】最速下降法,可行牛顿法的python实现,以Rosenbrock function为例 机器人中的数值优化|【三】无约束优化,拟牛…

汽车电子——产品标准规范汇总和梳理(自动驾驶)

文章目录 前言 一、分级 二、定位 三、地图 四、座舱 五、远程 六、信息数据 七、场景 八、智慧城市 九、方法论 总结 前言 见《汽车电子——产品标准规范汇总和梳理》 一、分级 《GB/T 40429-2021 汽车驾驶自动化分级》 《QC/T XXXXX—XXXX 智能网联汽车 自动驾…

位图布隆过滤器

文章目录 位图&布隆过滤器1. 位图1.1位图概念1.2位图原理1.3位图实现1.4位图排序 2. 布隆过滤器2.1 引入布隆过滤器2.2 概念2.3 布隆过滤器插入2.4 布隆过滤器的查找2.5 布隆过滤器模拟实现2.6 布隆过滤器的删除2.7 布隆过滤器优缺点2.8 布隆过滤器使用场景 3. 海量数据问题…

浙江移动与中兴通讯合作项目被评为“光华杯”东部赛区一等奖!

近日,浙江移动携手中兴通讯共同打造的创新合作项目“构建面向东数西算的传输全光底座赋能美丽浙江”在2023年第二届“光华杯”东部赛区决赛中被评为一等奖,该项目以运力为核心,可实践应用于“东数西算”建设工程当中,提供高速无阻…

interview6-jvm篇

JVM(Java Virtual Machine)Java程序的运行环境(java二进制字节码的运行环境) 在JVM中共有四大部分,分别是ClassLoader(类加载器)、Runtime DataArea(运行时数据区,内存分区)、Execu…

LeetCode 2100.适合打劫银行的日子

【LetMeFly】2100.适合打劫银行的日子 现在力扣上好像改题面为2100. 适合野炊的日子了。 力扣题目链接:https://leetcode.cn/problems/find-good-days-to-rob-the-bank/ 你和一群强盗准备打劫银行。给你一个下标从 0 开始的整数数组 security ,其中 sec…