学生信息管理系统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正则表达式re模块详解
Jun 25 Python
Python中的os.path路径模块中的操作方法总结
Jul 07 Python
Python设计模式之命令模式简单示例
Jan 10 Python
python输入整条数据分割存入数组的方法
Nov 13 Python
Python字符串的一些操作方法总结
Jun 10 Python
python网络编程之多线程同时接受和发送
Sep 03 Python
Python使用Opencv实现图像特征检测与匹配的方法
Oct 30 Python
python爬虫添加请求头代码实例
Dec 28 Python
基于Python获取docx/doc文件内容代码解析
Feb 17 Python
Django admin组件的使用
Oct 24 Python
利于python脚本编写可视化nmap和masscan的方法
Dec 29 Python
聊聊Python String型列表求最值的问题
Jan 18 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压缩html网页代码(清除空格,换行符,制表符,注释标记)
2012/04/02 PHP
php连接oracle数据库及查询数据的方法
2014/12/29 PHP
PHP实现返回JSON和XML的类分享
2015/01/28 PHP
PHP 设计模式系列之 specification规格模式
2016/01/10 PHP
PHP date()格式MySQL中插入datetime方法
2019/01/29 PHP
jQuery 瀑布流 浮动布局(一)(延迟AJAX加载图片)
2012/05/23 Javascript
JSONP 跨域访问代理API-yahooapis实现代码
2012/12/02 Javascript
JS判断、校验MAC地址的2个实例
2014/05/05 Javascript
使用原生JS实现弹出层特效
2014/12/22 Javascript
JavaScript的==运算详解
2016/07/20 Javascript
Query常用DIV操作获取和设置长度宽度的实现方法
2016/09/19 Javascript
详解VUE 数组更新
2017/12/16 Javascript
vue编译打包本地查看index文件的方法
2018/02/23 Javascript
解决vue-router在同一个路由下切换,取不到变化的路由参数问题
2018/09/01 Javascript
javascript匿名函数中的'return function()'作用
2018/10/15 Javascript
10行代码实现微信小程序滑动tab切换
2018/12/28 Javascript
详解用场景去理解函数柯里化(入门篇)
2019/04/11 Javascript
详解jenkins自动化部署vue
2019/05/14 Javascript
JavaScript页面加载事件实例讲解
2019/09/01 Javascript
vue父子模板传值问题解决方法案例分析
2020/02/26 Javascript
JavaScript内置对象之Array的使用小结
2020/05/12 Javascript
python批量获取html内body内容的实例
2019/01/02 Python
python基础梳理(一)(推荐)
2019/04/06 Python
Python将string转换到float的实例方法
2019/07/29 Python
用Python抢火车票的简单小程序实现解析
2019/08/14 Python
tensorflow 保存模型和取出中间权重例子
2020/01/24 Python
python如何处理程序无法打开
2020/06/16 Python
澳洲Chemist Direct药房中文网:澳洲大型线上直邮药房
2019/11/04 全球购物
户籍证明的格式
2014/01/13 职场文书
幼儿园教师培训制度
2014/01/16 职场文书
会计专业大学生求职信范文
2014/01/28 职场文书
求职信标题怎么写
2014/05/26 职场文书
大学毕业生求职自荐书
2014/06/05 职场文书
体育系毕业生自荐信
2014/06/28 职场文书
励志演讲稿200字
2014/08/21 职场文书
组工干部对照检查材料
2014/08/25 职场文书