学生信息管理系统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中List的sort方法指南
Sep 01 Python
用Python编写简单的定时器的方法
May 02 Python
Python跨文件全局变量的实现方法示例
Dec 10 Python
python中format()函数的简单使用教程
Mar 14 Python
python读取文件名称生成list的方法
Apr 27 Python
如何使用Python的Requests包实现模拟登陆
Apr 27 Python
python生成lmdb格式的文件实例
Nov 08 Python
wxpython+pymysql实现用户登陆功能
Nov 19 Python
python yield和Generator函数用法详解
Feb 10 Python
解决django FileFIELD的编码问题
Mar 30 Python
基于打开pycharm有带图片md文件卡死问题的解决
Apr 24 Python
给numpy.array增加维度的超简单方法
Jun 02 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优于Node.js的五大理由分享
2012/09/15 PHP
php中用memcached实现页面防刷新功能
2014/08/19 PHP
详解phpstorm2020最新破解方法
2020/09/17 PHP
php实现对短信验证码发送次数的限制实例讲解
2021/03/04 PHP
用Greasemonkey 脚本收藏网站会员信息到本地
2009/10/26 Javascript
extJs 常用到的增,删,改,查操作代码
2009/12/28 Javascript
Javascript继承机制的设计思想分享
2011/08/28 Javascript
导航跟随滚动条置顶移动示例代码
2013/09/11 Javascript
javascript将异步校验表单改写为同步表单
2015/01/27 Javascript
jquery实现鼠标滑过显示二级下拉菜单效果
2015/08/24 Javascript
Jquery 分页插件之Jquery Pagination
2015/08/25 Javascript
JS组件Bootstrap Table使用方法详解
2016/02/02 Javascript
vue中echarts3.0自适应的方法
2018/02/26 Javascript
vue实现微信分享链接添加动态参数的方法
2019/04/29 Javascript
详解Vue中的watch和computed
2020/11/09 Javascript
python正则表达式中的括号匹配问题
2014/12/14 Python
python访问抓取网页常用命令总结
2017/04/11 Python
Python使用re模块正则提取字符串中括号内的内容示例
2018/06/01 Python
python实现批量解析邮件并下载附件
2018/06/19 Python
Python迭代器与生成器用法实例分析
2018/07/09 Python
一篇文章弄懂Python中的可迭代对象、迭代器和生成器
2019/08/12 Python
Django获取应用下的所有models的例子
2019/08/30 Python
python使用多线程编写tcp客户端程序
2019/09/02 Python
python中的列表和元组区别分析
2020/12/30 Python
微软巴西官方网站:Microsoft Brasil
2019/09/26 全球购物
面向中国市场的在线海淘美妆零售网站:Beauty House美丽屋
2021/03/02 全球购物
数据库面试要点基本概念
2013/10/31 面试题
仓库门卫岗位职责
2013/12/22 职场文书
写求职信要注意什么问题
2014/04/12 职场文书
门面房租房协议书
2014/08/20 职场文书
运动会200米广播稿
2015/08/19 职场文书
党组织结对共建协议书
2016/03/23 职场文书
创业计划书之美容店
2019/09/16 职场文书
创业计划书之暑假培训班
2019/11/09 职场文书
python中的被动信息搜集
2021/04/29 Python
Navicat for MySQL的使用教程详解
2021/05/27 MySQL