学生信息管理系统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处理中文编码和判断编码示例
Feb 26 Python
Python贪吃蛇游戏编写代码
Oct 26 Python
python爬虫爬取快手视频多线程下载功能
Feb 28 Python
解决python线程卡死的问题
Feb 18 Python
使用python实现mqtt的发布和订阅
May 05 Python
python3 线性回归验证方法
Jul 09 Python
Win10里python3创建虚拟环境的步骤
Jan 31 Python
python3安装OCR识别库tesserocr过程图解
Apr 02 Python
重写django的model下的objects模型管理器方式
May 15 Python
PyCharm vs VSCode,作为python开发者,你更倾向哪种IDE呢?
Aug 17 Python
使用Python webdriver图书馆抢座自动预约的正确方法
Mar 04 Python
Python面向对象之内置函数相关知识总结
Jun 24 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一句话cmdshell新型 (非一句话木马)
2009/04/18 PHP
PHP分页函数代码(简单实用型)
2010/12/02 PHP
php调用c接口无错版介绍
2014/03/11 PHP
php中instanceof 与 is_a()区别分析
2015/03/03 PHP
php获取图片信息的方法详解
2015/12/10 PHP
php 指定范围内多个随机数代码实例
2016/07/18 PHP
PHP添加文字水印或图片水印的水印类完整源代码与使用示例
2019/03/18 PHP
Nigma vs Alliance BO5 第二场2.14
2021/03/10 DOTA
jQuery示例收集
2010/11/05 Javascript
js获取客户端操作系统类型的方法【测试可用】
2016/05/27 Javascript
微信jssdk用法汇总
2016/07/16 Javascript
js实现右键菜单功能
2016/11/28 Javascript
js实现做通讯录的索引滑动显示效果和滑动显示锚点效果
2017/02/18 Javascript
解决Vue页面固定滚动位置的处理办法
2017/07/13 Javascript
Iview Table组件中各种组件扩展的使用
2018/10/20 Javascript
CKEditor 4.4.1 添加代码高亮显示插件功能教程【使用官方推荐Code Snippet插件】
2019/06/14 Javascript
全面解析js中的原型,原型对象,原型链
2021/01/25 Javascript
python中使用urllib2获取http请求状态码的代码例子
2014/07/07 Python
Python中if __name__ == "__main__"详细解释
2014/10/21 Python
python获取元素在数组中索引号的方法
2015/07/15 Python
在Apache服务器上同时运行多个Django程序的方法
2015/07/22 Python
python变量不能以数字打头详解
2016/07/06 Python
在django中使用自定义标签实现分页功能
2017/07/04 Python
详解python eval函数的妙用
2017/11/16 Python
详解Python 爬取13个旅游城市,告诉你五一大家最爱去哪玩?
2019/05/07 Python
python实现的登录与提交表单数据功能示例
2019/09/25 Python
Python 多线程,threading模块,创建子线程的两种方式示例
2019/09/29 Python
python 字符串的驻留机制及优缺点
2020/06/19 Python
基于python tkinter的点名小程序功能的实例代码
2020/08/22 Python
印度尼西亚最大的电商平台:Tokopedia(印尼版淘宝)
2017/12/02 全球购物
Java如何格式化日期
2012/08/07 面试题
求最大连续递增数字串(如"ads3sl456789DF3456ld345AA"中的"456789")
2015/09/11 面试题
小学新学期教师寄语
2014/01/18 职场文书
给国外客户的邀请函
2014/01/30 职场文书
前厅部经理岗位职责范文
2014/02/04 职场文书
2015年端午节活动方案
2015/05/05 职场文书