学生信息管理系统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 相关文章推荐
使用django-crontab实现定时任务的示例
Feb 26 Python
Python切片工具pillow用法示例
Mar 30 Python
matplotlib savefig 保存图片大小的实例
May 24 Python
利用Python进行数据可视化常见的9种方法!超实用!
Jul 11 Python
python爬虫之自动登录与验证码识别
Jun 15 Python
Django 实现购物车功能的示例代码
Oct 08 Python
详解python Todo清单实战
Nov 01 Python
python并发和异步编程实例
Nov 15 Python
Opencv实现抠图背景图替换功能
May 21 Python
Python计算两个矩形重合面积代码实例
Sep 16 Python
pytorch 图像中的数据预处理和批标准化实例
Jan 15 Python
浅析Python __name__ 是什么
Jul 07 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将任何格式视频转为flv的代码
2009/09/03 PHP
PHP array操作10个小技巧分享
2011/06/23 PHP
php简单生成一组与多组随机字符串的方法
2017/05/09 PHP
ExtJS下grid的一些属性说明
2009/12/13 Javascript
jqeury eval将字符串转换json的方法
2011/01/20 Javascript
js 遍历json返回的map内容示例代码
2013/10/29 Javascript
让JavaScript中setTimeout支持链式操作的方法
2015/06/19 Javascript
使用js复制链接中的部分文字的方法
2015/07/30 Javascript
jquery表单验证需要做些什么
2015/11/17 Javascript
jQuery 3 中的新增功能汇总介绍
2016/06/12 Javascript
Javascript中apply、call、bind的巧妙使用
2016/08/18 Javascript
JS实现全屏的四种写法
2016/12/30 Javascript
vue组件间通信解析
2017/03/01 Javascript
详解node.js搭建代理服务器请求数据
2017/04/08 Javascript
vue 项目打包通过命令修改 vue-router 模式 修改 API 接口前缀
2018/06/13 Javascript
使用vue-router与v-if实现tab切换遇到的问题及解决方法
2018/09/07 Javascript
微信小程序自定义弹窗滚动与页面滚动冲突的解决方法
2019/07/16 Javascript
vue实现移动端省市区选择
2019/09/27 Javascript
vue引用外部JS的两种种方法
2020/01/28 Javascript
Django中的“惰性翻译”方法的相关使用
2015/07/27 Python
详解tensorflow载入数据的三种方式
2018/04/24 Python
小白入门篇使用Python搭建点击率预估模型
2018/10/12 Python
Python 忽略warning的输出方法
2018/10/18 Python
Python使用sqlite3模块内置数据库
2020/05/07 Python
Hotter Shoes英国官网:英伦风格,舒适的鞋子
2017/12/28 全球购物
匡威荷兰官方网站:Converse荷兰
2018/10/24 全球购物
学校经典推荐信
2013/10/30 职场文书
大学团支书的自我评价分享
2013/12/14 职场文书
开办化妆品公司创业计划书
2013/12/26 职场文书
幼儿园消防演练方案
2014/02/13 职场文书
大学生党员个人对照检查材料范文
2014/09/25 职场文书
交通安全教育主题班会
2015/08/12 职场文书
《颐和园》教学反思
2016/02/19 职场文书
党员公开承诺书(2016最新版)
2016/03/24 职场文书
职场:企业印章管理制度(模板)
2019/10/18 职场文书
Python实现数据的序列化操作详解
2022/07/07 Python