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

python学生信息管理系统

wx供重浩:创享日记
对话框发送:python学生信息
免费获取完整源码源文件+配置教程说明等


在IDLE中运行《学生信息管理系统》即可进入如图1所示的系统主界面。在该界面中可以选择要使用功能对应的菜单进行不同的操作。在选择功能菜单时,有两种方法,一种是输入1,另一种是按下键盘上的↑或↓方向键进行选择。这两种方法的结果是一样的,所以使用哪种方法都可以。

在这里插入图片描述
具体的操作步骤如下:
(1)录入学生信息。在“请选择:”右侧光标所在位置,输入数字1,并按下Enter键,系统将分别提示输入学生编号、学生名字、英语成绩、Python成绩和C语言成绩,输入正确的信息后,系统会提示是否继续添加,如图2所示。输入y,系统将会再次提示用户输入用户信息,输入n,则将录入学生信息保存到文件中。

在这里插入图片描述
(2)查找学生信息。在功能菜单上输入功能编号2,并且按下Enter键,系统将要求用户选择是按学生编号查询还是按学生姓名查询,如果用户输入1,则要求用户输入学生ID,表示按学生编号查询,输入想要查询的学生编号,系统查找该学生信息,如果找到则显示,效果如图3所示,否则显示“(o@.@o) 无数据信息 (o@.@o)”,效果如图4所示。最后提示是否继续查找输入y,系统将再次提示用户选择查找方式,输入n,则退出查找学生信息功能。

在这里插入图片描述
在这里插入图片描述
(3)删除学生信息。在功能菜单上输入功能编号3,并且按下Enter键,系统将提示输入要删除学生的编号,输入相应的学生ID后,系统会直接从文件中删除该学生信息,并且提示是否继续删除,如图5所示。输入y,系统将会再次提示用户输入要删除的学生编号,输入n,则退出删除功能。

在这里插入图片描述
(4)修改学生信息。在功能菜单上输入功能编号4,并且按下Enter键,系统首先显示全部学生信息列表,再提示输入要修改学生的编号,输入相应的学生ID后,系统会在文件中查找该学生信息,如果找到,则提示修改相应的信息,否则不修改。最后提示是否继续修改,如图6所示。输入y,系统将会再次提示用户输入要修改的学生编号,输入n,则退出修改功能。

在这里插入图片描述
(5)排序。在功能菜单上输入功能编号5,并且按下Enter键,系统将先显示不排序的全部学生信息,然后提示选择排序方式,这里输入2,再选择降序排列“1”,将对学生信息按Python成绩降序排列并显示,如图7所示。

在这里插入图片描述
(6)统计学生总人数。在功能菜单上选择“6 统计学生总人数”菜单项,并且按下Enter键,系统将自动统计出学生总人数并显示,如图8所示。

在这里插入图片描述
(7)显示所有学生信息。在功能菜单上选择“7 显示所有学生信息”菜单项,并且按下Enter键,系统将获取并显示全部学生信息,如图9所示。

在这里插入图片描述

(8)退出系统。在功能菜单上输入功能编号5,并且按下Enter键即可退出系统,如图10所示。

在这里插入图片描述
部分代码如下,其余详见下载。

'''1 录入学生信息'''def insert():stdentList = []        # 保存学生信息的列表mark = True  # 是否继续添加while mark:id = input("请输入ID(如 1001):")if not id:  # ID为空,跳出循环breakname = input("请输入名字:")if not name:  # 名字为空,跳出循环breaktry:english = int(input("请输入英语成绩:"))python = int(input("请输入Python成绩:"))c = int(input("请输入C语言成绩:"))except:print("输入无效,不是整型数值....重新录入信息")continuestdent = {"id": id, "name": name, "english": english, "python": python, "c": c}  # 将输入的学生信息保存到字典stdentList.append(stdent)  # 将学生字典添加到列表中inputMark = input("是否继续添加?(y/n):")if inputMark == "y":  # 继续添加mark = Trueelse:  # 不继续添加mark = Falsesave(stdentList)  # 将学生信息保存到文件print("学生信息录入完毕!!!")
http://www.lryc.cn/news/23358.html

相关文章:

  • 【微信小程序】-- WXML 模板语法 - 条件渲染 -- wx:if hidden (十一)
  • 2023上半年软考,广州/东莞/深圳/江苏报班是明智的选择
  • C++修炼之练气期一层——命名空间
  • matplotlib综合学习
  • IIS .Net Core 413错误和Request body too large解决办法
  • Spring Boot数据访问—(springboot 多数据源)—官方原版
  • 高燃!GitHub上标星75k+超牛的Java面试突击版
  • grid宫格布局新手快捷上手-f
  • 面试必刷101 Java题解 -- part 3
  • 干货满满!MES的简介和运用
  • 【ElasticSearch系列-01】初识以及安装elasticSearch
  • 【Leedcode】栈和队列必备的面试题(第一期)
  • Unity 渲染流程管线
  • c++之引用
  • Java-扑克牌的创建以及发放
  • 华为OD机试题,用 Java 解【开放日活动】问题
  • yarn run serve报错Error: Cannot find module ‘@vue/cli-plugin-babel‘ 的解决办法
  • 【LeetCode】剑指 Offer(11)
  • 【英语】托福单词 近义/形近 分类汇总(更新中......)
  • 面试了一个32岁的程序员,一个细节就看出来是培训班的····
  • Qt软件开发: 编写MQTT客户端连接各大物联网平台(主题订阅、发布)
  • PTA L1-059 敲笨钟(详解)
  • 【设计模式】9.桥接模式
  • 五、线程池
  • ROS从入门到精通2-6:Rviz可视化进阶(画坐标轴、直线、平面、圆柱等)
  • Linux命令之lz4命令
  • 强强角逐,筑梦开源| 2022年度启智社区优秀项目及开发者评选结果正式揭晓
  • 【使用两个队列实现栈】
  • 毕业设计 基于51单片机环境监测设计 光照 PM2.5粉尘 温湿度 2.4G无线通信
  • PowerShell Install Rabbitmq