使用Python实现 学生学籍管理系统

yipeiwu_com7年前Python基础

大家好,今天跟大家分享一个用Python实现的学生学籍管理系统:

该代码主体由五个函数组成:

1.add_stu() 添加
2.del_stu() 删除
3.print_stu()打印
4.exit_stu() 退出
5.system() 主函数

1.add_stu()

此段函数作用:把输入的值存入字典newstu中,并将字典存入列表stu中

def add_stu():
  newstu = {
       'num':int(input("请输入学号:"'')),
       'name':input("请输入姓名:"''),
       'sex':input("请输入性别:"'')
       } 
  stu.append(newstu) #stu是定义的列表,可在下面的完整代码中查找
  return system()

在这里插入图片描述

2.del_stu()

此段函数作用:根据输入学号,查找列表中的字典键值是否存入,若存入,将该字典从列表中删除

def del_stu():
  delstus = int(input("请输入要删除的学生学号:"))
  k = 0 #循环递增变量,用来判断要删除的字典在列表中的位置
  for temp in stu:
    k+=1
    if delstus in range(temp['num'],temp['num']-1,-1):
    #这里的temp变量相当于列表中的字典,通过查找键值是否相匹配,并用到range函数(start,stop,step)
      print("该学号已找到")
      break
  del stu[( k - 1 )]#删除列表中的字典
  print("删除成功")
  return system()

在这里插入图片描述

3.print_stu()

此段函数作用:把列表中的字典以值的形式遍历出来

def print_stu():
  i = 1
  j = 0
  k = 1
  print("=================================")
  print("学生信息如下:")
  print("=================================")
  print("序号\t学号\t姓名\t性别")
  for s in stu:#遍历列表
    for cla in s.values(): #字典中的按值索引     
      if j%3 == 0:#第一个if用来实现:序号递增并换行

        print("\n")
        print(k,end = '.\t')
        k+=1
      print(cla,end = '\t')
      if i%3 == 0:#第二个if用来实现:每输出一个字典就换行
        print("\n")
      i+=1
      j+=1
  print("\n")
  return system()

在这里插入图片描述

4.exit_stu()

此段函数作用:人机交互,退出

def exit_stu():
  x = input("是否退出?( YES or NO ) : ")
  if x == 'YES':
    print("***Repl Closed*** ")
  else:
    return system()

在这里插入图片描述

5.system_stu()

主函数

def system():
  print("=================================")
  print("学生管理系统v1.0")
  print("1.添加学生信息")
  print("2.删除学生信息")
  print("3.显示所有的学生信息")
  print("0.退出系统")

  print("=================================")
  x = int(input("请输入功能对应的数字: "))
  if( x == 1):
    add_stu()
  elif( x == 2):
    del_stu()
  elif( x == 3):
    print_stu()
    
  elif( x == 0):
    exit_stu()
  else:
    return system()

在这里插入图片描述

完整代码

stu = []
def add_stu():
  newstu = {
       'num':int(input("请输入学号:"'')),
       'name':input("请输入姓名:"''),
       'sex':input("请输入性别:"'')
       }
  stu.append(newstu)
  return system()
def del_stu():
  delstus = int(input("请输入要删除的学生学号:"))
  k = 0
  for temp in stu:
    k+=1
    if delstus in range(temp['num'],temp['num']-1,-1):
      print("该学号已找到")
      break
  del stu[( k - 1 )]
  print("删除成功")
  return system()
def print_stu():
  i = 1
  j = 0
  k = 1
  print("=================================")
  print("学生信息如下:")
  print("=================================")
  print("序号\t学号\t姓名\t性别")
  for s in stu:
    for cla in s.values():      
      if j%3 == 0:

        print("\n")
        print(k,end = '.\t')
        k+=1
      print(cla,end = '\t')
      if i%3 == 0:
        print("\n")
      i+=1
      j+=1
  print("\n")
  return system()
def exit_stu():
  x = input("是否退出?( YES or NO ) : ")
  if x == 'YES':
    print("***Repl Closed*** ")
  else:
    return system()
def system():
  print("=================================")
  print("学生管理系统v1.0")
  print("1.添加学生信息")
  print("2.删除学生信息")
  print("3.显示所有的学生信息")
  print("0.退出系统")

  print("=================================")
  x = int(input("请输入功能对应的数字: "))
  if( x == 1):
    add_stu()
  elif( x == 2):
    del_stu()
  elif( x == 3):
    print_stu()
    
  elif( x == 0):
    exit_stu()
  else:
    return system()
system()

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

难点

1.在列表中,按学号索引字典

2. 打印列表时的换行和序号

总结

以上所述是小编给大家介绍的使用Python实现 学生学籍管理系统,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

Python3读取UTF-8文件及统计文件行数的方法

本文实例讲述了Python3读取UTF-8文件及统计文件行数的方法。分享给大家供大家参考。具体实现方法如下: ''''' Created on Dec 21, 2012 Pyth...

python接口自动化(十七)--Json 数据处理---一次爬坑记(详解)

python接口自动化(十七)--Json 数据处理---一次爬坑记(详解)

简介 有些 post 的请求参数是 json 格式的,这个前面发送post 请求里面提到过,需要导入 json模块处理。现在企业公司一般常见的接口因为json数据容易处理,所以绝大多数返...

Python实现将一个正整数分解质因数的方法分析

本文实例讲述了Python实现将一个正整数分解质因数的方法。分享给大家供大家参考,具体如下: 遇到一个python编程联系题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3...

python构建指数平滑预测模型示例

python构建指数平滑预测模型示例

指数平滑法 其实我想说自己百度的… 只有懂的人才会找到这篇文章… 不懂的人…看了我的文章…还是不懂哈哈哈 指数平滑法相比于移动平均法,它是一种特殊的加权平均方法。简单移动平均法用的是算术...

详解Python学习之安装pandas

详解Python学习之安装pandas

一、python pip的安装与使用 1、pip 是 Python 包管理工具,该工具提供了对Python 包的查找、下载、安装、卸载的功能。 目前如果你在 python.or...