学生信息管理系统Python面向对象版


Posted in Python onJanuary 30, 2019

本文实例为大家分享了python学生信息管理系统的具体代码,供大家参考,具体内容如下

"""
  程序名称:学生信息管理系统
  版本信息:0.1
  开发者:飞宇
  开始时间:2018.3.23 19:45
  版本更新时间:2018.4.2 23:08
  格式:IPO
  OOP面向对象
"""
# 学生类
class Student:
  def __init__(self, stuId, name, age, sex, dept, nation):
    self.stuId = stuId
    self.name = name
    self.age = age
    self.sex = sex
    self.dept = dept
    self.nation = nation
  def studentoop(self):
    pass
# 管理系统类
class Sys:
  def __init__(self):
    pass
  # 展示系统菜单
  def show_menu(self):
    print("=" * 56)
    print("")
    print("         学生信息管理系统 v1.0")
    print("")
    print("          1:添加用户信息")
    print("          2:查询用户信息")
    print("          3:修改用户信息")
    print("          4:删除用户信息")
    print("          5:显示用户信息")
    print("          0:退出系统")
    print("")
    print("=" * 56)
  # 输入学生菜单
  def getinfo(self):
    global new_stuId
    global new_name
    global new_age
    global new_sex
    global new_dept
    global new_nation
    new_stuId = input("请输入学号:")
    new_name = input("请输入名字:")
    new_age = input("请输入年龄:")
    new_sex = input("请输入性别:")
    new_dept = input("请输入专业:")
    new_nation = input("请输入民族:")
  # 添加学生信息
  def add_stus(self):
    #调用getinfo方法
    self.getinfo()
    #以ID为Key,将新输入的信息赋值给Student类
    students[new_stuId] = Student(new_stuId, new_name, new_age, new_sex, new_dept, new_nation)
    # 打印添加的学生信息
    print("学号:%s" % students[new_stuId].stuId, "姓名:%s" % students[new_stuId].name, "年龄:%s" % students[new_stuId].age,
       "性别:%s" % students[new_stuId].sex, "专业:%s" % students[new_stuId].dept, "民族:%s" % students[new_stuId].nation)
    print("=" * 56)
  # 查询学生信息
  def find_stus(self):
    find_nameId = input("请输入要查的学号")
    if find_nameId in students.keys():
      print("学号:%s\t名字:%s\t年龄:%s\t性别:%s\t名字:%s\t民族:%s" %
         (students[new_stuId].stuId, students[new_stuId].name, students[new_stuId].age,
          students[new_stuId].sex, students[new_stuId].dept, students[new_stuId].nation))
    else:
      print("查无此人")
    print("=" * 56)
  # 修改学生信息
  def alter_stus(self):
    alterId = input("请输入你要修改学生的学号:")
    self.getinfo()
    # 当字典中Key相同时,覆盖掉以前的key值
    if alterId in students.keys():
      students[new_stuId] = Student(new_stuId, new_name, new_age, new_sex, new_dept, new_nation)
      del students[alterId]
    else:
      print("查无此人")
    print("=" * 56)
  # 删除学生信息
  def del_stus(self):
 
    cut_nameID = input("请输入要删除的学号:")
    if cut_nameID in students.keys():
      del students[cut_nameID]
    else:
      print("查无此人")
    print("=" * 56)
  # 显示学生信息
  def show_stus(self):
 
    for new_stuId in students:
      print("学号:%s\t名字:%s\t年龄:%s\t性别:%s\t名字:%s\t民族:%s" %
         (students[new_stuId].stuId, students[new_stuId].name, students[new_stuId].age,
          students[new_stuId].sex, students[new_stuId].dept, students[new_stuId].nation))
    print("=" * 56)
  # 退出
  def exit_stus(self):
    print("欢迎下次使用")
    exit()
# 创建系统对象
sys = Sys()
# 定义一个容器来存储学生信息
students = {}
sys.show_menu()
while True:
  choice = int(input("请选择功能:"))
  if choice == 1:
    sys.add_stus()
  elif choice == 2:
    sys.find_stus()
  elif choice == 3:
    sys.alter_stus()
  elif choice == 4:
    sys.del_stus()
  elif choice == 5:
    sys.show_stus()
  elif choice == 0:
    sys.exit_stus()
  else:
    print("您输入有误,请重新输入")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python常用正则表达式符号浅析
Aug 13 Python
Python3.7中安装openCV库的方法
Jul 11 Python
selenium+python自动化测试之鼠标和键盘事件
Jan 23 Python
python实现移位加密和解密
Mar 22 Python
OpenCV3.0+Python3.6实现特定颜色的物体追踪
Jul 23 Python
Python PO设计模式的具体使用
Aug 16 Python
Python Gitlab Api 使用方法
Aug 28 Python
Python实现非正太分布的异常值检测方式
Dec 09 Python
Python批量启动多线程代码实例
Feb 18 Python
使用SimpleITK读取和保存NIfTI/DICOM文件实例
Jul 01 Python
用Python 爬取猫眼电影数据分析《无名之辈》
Jul 24 Python
python 判断一组数据是否符合正态分布
Sep 23 Python
python学生管理系统开发
Jan 30 #Python
Python修改文件往指定行插入内容的实例
Jan 30 #Python
python学生管理系统
Jan 30 #Python
selenium+python截图不成功的解决方法
Jan 30 #Python
python列表使用实现名字管理系统
Jan 30 #Python
Python基本socket通信控制操作示例
Jan 30 #Python
Python mutiprocessing多线程池pool操作示例
Jan 30 #Python
You might like
如何正确理解PHP的错误信息
2006/10/09 PHP
Erlang的运算符(比较运算符,数值运算符,移位运算符,逻辑运算符)
2012/07/23 PHP
thinkphp框架下404页面设置 仅三步
2016/05/14 PHP
PHP编程实现csv文件导入mysql数据库的方法
2017/04/29 PHP
浅谈关于PHP解决图片无损压缩的问题
2017/09/01 PHP
PHP封装的分页类与简单用法示例
2019/02/25 PHP
基于laravel Request的所有方法详解
2019/09/29 PHP
contains和compareDocumentPosition 方法来确定是否HTML节点间的关系
2011/09/13 Javascript
用Mootools获得操作索引的两种方法分享
2011/12/12 Javascript
jQuery修改CSS伪元素属性的方法
2014/07/30 Javascript
jQuery获取父元素节点、子元素节点及兄弟元素节点的方法
2016/04/14 Javascript
jQuery使用ajax跨域获取数据的简单实例
2016/05/18 Javascript
AngularJS中$http服务常用的应用及参数
2016/08/22 Javascript
AngularJS解决ng界面长表达式(ui-set)的方法分析
2016/11/07 Javascript
jQuery实现模拟搜索引擎的智能提示功能简单示例
2019/01/27 jQuery
jquery UI实现autocomplete在获取焦点时得到显示列表功能示例
2019/06/04 jQuery
Element ui 下拉多选时新增一个选择所有的选项
2019/08/21 Javascript
vue中js判断长时间不操作界面自动退出登录(推荐)
2020/01/22 Javascript
JS错误处理与调试操作实例分析
2020/04/13 Javascript
vue2.0 解决抽取公用js的问题
2020/07/31 Javascript
vue+高德地图实现地图搜索及点击定位操作
2020/09/09 Javascript
在antd Form表单中select设置初始值操作
2020/11/02 Javascript
[02:02:38]VG vs Mineski Supermajor 败者组 BO3 第一场 6.6
2018/06/07 DOTA
python web框架中实现原生分页
2019/09/08 Python
关于Python-faker的函数效果一览
2019/11/28 Python
完美解决Django2.0中models下的ForeignKey()问题
2020/05/19 Python
利用keras使用神经网络预测销量操作
2020/07/07 Python
html5摇一摇代码优化包括DeviceMotionEvent等等
2014/09/01 HTML / CSS
猎人靴英国官网:Hunter Boots
2017/02/02 全球购物
2014国庆节标语口号
2014/09/19 职场文书
2015年精神文明建设工作总结
2015/04/21 职场文书
反四风问题学习心得体会
2016/01/22 职场文书
Linux系统下安装PHP7.3版本
2021/06/26 PHP
python APScheduler执行定时任务介绍
2022/04/19 Python
Vscode中SSH插件如何远程连接Linux
2022/05/02 Servers
MySQL 数据表操作
2022/05/04 MySQL