Python实现学生管理系统,用python写一个简单的学生管理系统_1

  Python实现学生管理系统,用python写一个简单的学生管理系统

  本文主要介绍用Python实现的简单的学生信息管理系统。本文中的示例代码非常详细,具有一定的参考价值。感兴趣的朋友可以参考一下。

  本文分享用Python实现学生信息管理系统的具体代码,供大家参考。具体内容如下

  

要求描述:

  学生信息包括:学号、姓名、年龄、性别、出生日期、地址、电话号码、电子邮箱等。试设计一个能提供以下基本功能的学生信息管理系统:

  工作在系统菜单模式下,学生信息输入功能(学生信息以文件保存)-输入学生信息浏览功能-输出查询和排序功能-算法1。按学号查询

  2.按名称查询

  删除和修改学生信息(可选)的基本思路和之前写的图书借阅系统是一样的,这里就不赘述了。

  直接编码,代码如下:

  导入操作系统

  班级学生(对象):

  def __init__(自身,sid,姓名,年龄=无,性别=无,

  出生=无,地址=无,电话=无,邮件=无):

  self.sid=sid

  self.name=name

  年龄=年龄

  self.gender=性别

  自我出生=出生

  self.address=地址

  self.tel=tel

  self.mail=mail

  def __str__(self):

  返回“% s:% s:% s:% s:% s:% s:% s:% s:% s“%(self . sid,self.name,self.age,self.gender,

  自我出生、自我地址、自我电话、自我邮件)

  班级学生管理(对象):

  学生=[]

  def __init__(self):

  filename=students.csv

  如果os.path.exists(文件名):

  打开(文件名)为f:

  对于f:中的线路

  info=line.split(: )

  studentObj=学生(*info)

  self . students . append(studentObj)

  打印(“成功加载缓存的学生信息”)

  else:

  打印(没有缓存的学生信息!)

  定义添加(自身):

  Sid=input(学生id:)

  Name=input (name:)

  年龄=输入(年龄:)

  性别=输入(性别(1-男性2-女性):)

  出生=输入(出生日期(年-月-日):)

  Address=input (address:)

  Tel=input(联系电话:)

  Mail=input(电子邮件:)

  stu=学生(sid、姓名、年龄、性别、出生、地址、电话、邮件)

  self . student . append(stu)

  打印(学生[%s]信息输入成功 %(姓名))

  定义显示(自身):

  打印(“学生信息显示”)。中心(50, * )

  对于自学的学生

  打印(- * 50)

  打印(字符串(学生))

  定义搜索(自身,关键字,值):

  如果键入[sid , name]:

  对于自学的学生

   if getattr(student, key) == value:

                      print(str(student))

              else:

                  print("未找到符合条件的学生信息!")

          else:

              print("系统只支持根据[学号]和[姓名]查询!")

      def sort(self, key):

          # 根据指定的key值进行排序

          sorted_students = sorted(self.students, key=lambda x: int(getattr(x, key)) if x else None)

          for student in sorted_students:

              print(student)

      def delete(self, key, value):

          if key in [sid, name]:

              for student in self.students:

                  if getattr(student, key) == value:

                      self.students.remove(student)

                      print("删除属性值[%s]为[%s]的学生信息" % (key, value))

              else:

                  print("未找到符合条件的学生信息!")

          else:

              print("当前系统只支持根据 [学号] 和 [姓名] 删除!")

      def modify(self, key, oldvalue, newvalue):

          if key in [sid, name]:

              for student in self.students:

                  if getattr(student, key) == oldvalue:

                      setattr(student, key, newvalue)

                      print("修改属性值[%s]为[%s]的学生信息为[%s]成功" % (key, oldvalue, newvalue))

              else:

                  print("未找到符合条件的学生信息!")

          else:

              print("当前系统只支持根据 [学号] 和 [姓名] 修改!")

      def save(self):

          filename = students.csv

          f = open(filename, w)

          for student in self.students:

              f.write(str(student) + \n)

          print("写入学生信息成功!")

          f.close()

  def main():

      manager = StudentManage()

      while True:

          menu = """

                          学生信息管理系统

              1. 学生信息录入

              2. 学生信息浏览

              3. 学生信息查询

              4. 学生信息排序

              5. 学生信息的删除

              6. 学生信息的修改

              7. 退出

          请输入正确的选择:    """

          choice = input(menu)

          if choice == 1:

              manager.add()

              manager.save()

          elif choice == 2:

              manager.show()

          elif choice == 3:

              key = input("查询(sid-根据学号, name-根据姓名): ")

              value = input("查询值: ")

              manager.search(key, value)

          elif choice == 4:

              key = input("排序(sid-根据学号, age-根据年龄): ")

              manager.sort(key)

          elif choice == 5:

              key = input("删除(sid-根据学号, name-根据姓名): ")

              value = input("删除的属性值: ")

              manager.delete(key, value)

          elif choice == 6:

              key = input("修改(sid-根据学号, name-根据姓名): ")

              value1 = input("旧的属性值: ")

              value2 = input("新的属性值: ")

              manager.modify(key, value1, value2)

          elif choice == 7:

              exit(0)

          else:

              print("请输入正确的选择!")

  main()

  运行之后,就会输出可供选择的功能菜单键,如下:

  

  下面就是基本的功能实现了:

  1.录入学生信息

  

  

  2.浏览学生信息

  

  3.查询指定学生信息

  

  4.对学生信息进行排序(可以根据学号或者年龄从小到大排序)

  

  5.删除指定学生的信息

  

  6.修改指定学生信息(修改学号或姓名)

  

  操作后可以看到学生信息会发生变化:

  

  然后输入7之后就会退出该系统。

  以上就是一个通过Python实现的简易的学生信息管理系统。

  以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持盛行IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: