只需用Python基础知识就能做的【学生信息管理系统】,新手小白的福利,毕设、期末作业必备技能

2021-11-09 11:23:23 浏览数 (2)

前言

学生信息管理系统,是可以做成管理学生成绩、管理学生参与活动、管理学生学籍信息、管理学生课程、学生综合评价等的一些记录学生学习生活各方面信息的管理系统。

当然,今天的代码不会弄的那么复杂,就做一个简单版的学生信息管理系统,主要的功能就是记录一些学生的姓名、学号、各科目成绩等,实现增加、删除、修改的系统

知识点

  • 基本的数据类型与结构
  • 基本的逻辑控制语句

开发环境

  1. 解释器:Python 3.8.8 | Anaconda, Inc.(2021.05)
  2. 编辑器:pycharm 2021.2.1 专业版(汉化)

先看下效果

开始代码,先来个死循环

代码语言:javascript复制
msg = """**************************************************
欢迎使用【学生信息管理系统】V1.0
请选择你想要进行的操作
1. 新建学生信息
2. 显示全部信息
3. 查询学生信息
4. 删除学生信息
5. 修改学生信息

0. 退出系统
**************************************************"""
while True:
    print(msg)
    action = input('请选择你想要进行的操作:')
    # action = 1 2 3 4 5 0
    print('选择的操作:t', action)

循环是实现了,但是里面还没有任何的功能

实现操作功能内容

当输入数字1,2,3,4,5,0后所回复的信息

代码语言:javascript复制
if action == '1':
    print('1. 新建学生信息')
elif action == '2':
    print('2. 显示全部信息')
elif action == '3':
    print('3. 查询学生信息')
elif action == '4':
    print('4. 删除学生信息')
elif action == '5':
    print('5. 修改学生信息')
elif action == '0':
    print('0. 退出系统 欢迎下次光临')
    break
else:
    print('请选择正确的操作')

新建学生信息

代码语言:javascript复制
name = input('请输入姓名:')
chinese = int(input('请输入语文成绩:'))
math = int(input('请输入数学成绩:'))
english = int(input('请输入英语成绩:'))
# 总分要输入吗 ?
new_student = {'name': name, 'chinese': chinese, 'math': math, 'english': english}
# 新的学员信息有了,怎么加到程序里面去
students.append(new_student)

显示全部信息

代码语言:javascript复制
print('姓名       语文      数学      英语      总分')
for student in students:
    # print(student)
    print(student['name']   '       '  
          str(student['chinese'])   '       '  
          str(student['math'])   '      '  
          str(student['english'])   '       '  
          str(student['chinese']   student['math']   student['english']))

查询学生信息

代码语言:javascript复制
name = input('请输入需要查询的学员姓名:')

# 然后打印找到的学员,没有找到就打印此学员不存在

flag = False  # 定义一个变量记录是否找到了学员
# 1. 遍历所有的学员
for student in students:
    # print(student)
    # 2. 如果输入的学员姓名与代码中的学员姓名一样,就是找到了
    if student['name'] == name:
        # 3. 然后打印找到的学员
        print('姓名       语文      数学      英语      总分')
        print(student['name']   '       '  
              student['chinese']   '        '  
              student['math']   '       '  
              student['english']   '        '  
              student['chinese']   student['math']   student['english'])
        flag = True  # 找到了之后就标记一下
    # 如果没有找到就打印此学员不存在
if not flag:
    # 4. 没有找到就打印此学员不存在
    # 应该是找完所有学员都没有找到之后才打印
    print('此学员不存在')

删除学生信息

代码语言:javascript复制
# 输入需要删除的学生姓名
name = input('请输入需要删除的学员姓名:')
# 找到需要删除的学员
flag = False
for student in students:
    if student['name'] == name:
        # 找到之后直接删除学员
        # 如何从列表中删除元素
        students.remove(student)
        print(student['name']   ' 学员删除成功')
        flag = True
if not flag:
    print('此学员不存在,无法删除')

修改学生信息

代码语言:javascript复制
name = input('请输入需要修改的学员姓名:')
# 找到需要删除的学员
flag = False
for student in students:
    if student['name'] == name:
        # 找到学员之后就可以进行修改
        print('(输入为空则不修改)')
        # input 输入可能会为空
        name = input('请重新输入姓名:')
        chinese = input('请重新输入语文成绩:')
        math = input('请重新输入数学成绩:')
        english = input('请重新输入英语成绩:')
        # 如果  name 输入了内容,我们再进行复制
        if name:  # true false
            student['name'] = name
        # 需要把字符串转化为数字
        if chinese:
            student['chinese'] = int(chinese)
        if math:
            student['math'] = int(math)
        if english:
            student['english'] = int(english)

        # 建立知识体系 需要一点一点的进行积累
        flag = True
if not flag:
    print('此学员不存在,无法修改')

输入学生信息

代码语言:javascript复制
students = [
    {'name': '张三', 'chinese': 60, 'math': 60, 'english': 60},
    {'name': '李四', 'chinese': 60, 'math': 60, 'english': 60},
    {'name': '王五', 'chinese': 60, 'math': 60, 'english': 60},
]

最后运行代码

当然,还有升级版的

0 人点赞