学生成绩管理系统(含代码文件)

学生成绩管理系统

主模块

import 学生管理系统.程序模块.zeng as w1 
import 学生管理系统.程序模块.cha as c1 
import 学生管理系统.程序模块.shan as s1 
import 学生管理系统.程序模块.gai as g1 
str_info ="""
<---------------- 学生管理系统 --------------->
            1.录入学生信息 
            2.查询学生信息 
            3.删除学生信息 
            4.修改学生信息 
            5.退出系统 
<---------------- 学生管理系统 --------------->
"""
while True:
    print(str_info)
    action = str(input('请输入你想要进行的操作:'))
    # 先把整个框架搭建好
    #录入学生信息
    if action == '1': 
        w1.zeng()
    #查询学生信息
    elif action == '2': 
        c1.cha()
    #删除学生信息
    elif action == '3': 
        s1.shan()
    #修改学生信息
    elif action == '4': 
        g1.gai()
    #退出系统
    elif action =='5': 
        print('感谢使用您的大力支持,系统退出完成')
        quit()
    #判断错误
    else: 
        print('您的输入有误,请重新输入《浩浩出品》')

程序部件包

1、查询学生信息

import pandas as pd
def cha(): 
    try:
        data = pd.read_csv(r'../data/data.csv', encoding='utf-8')
        data1 = data.set_index(data['name'])
        print('这里是全部学生信息内容\n', data1)
        name = str(input('==========请输入你要查询的名字==========:'))
        try:
            print('你要查', '\n'
                         '的人是:', data1.loc[[name], :])
        except:
            print(
                '------------查无此人,请重新输入------------\n------------查无此人,请重新输入------------\n------------查无此人,请重新输入------------\n------------查无此人,请重新输入------------')
    except:
        print('输入操作有错误,请重新输入:《浩浩出品》') 

2、删除学生信息

import pandas as pd
def shan(): 
    data = pd.read_csv(r'../data/data.csv', encoding='utf-8')
    data1 = data.set_index(data['name'])
    try:
        print('<------------------------------->', '\n', '     是否要进行删除这项操作', '\n', '     请在下面输入是或不是:')
        panduan2 = str(input())
        if panduan2 == '是':
            name = str(input('请输入你要删除的信息人名字:'))
            try:
                print('<*********************************>', '\n', '你要查', '\n'
                                                                          '的人是:', data1.loc[[name], :])
                print('是否要删除这位学生信息?', '\n', '请在下面输入是或不是:')
                panduan3 = str(input())
                if panduan3 == '是':
                    data1.drop([name], axis=0, inplace=True)
                    data = data1.to_csv("data.csv", encoding='utf-8-sig', index=False)
                    print('删除', name, '成功!')
                    # 垃圾回收机制--->对象技术 最终
                elif panduan2 == '不是':
                    print("重新输入选择。")
                else:
                    print('你的输入有误')
            except:
                print('------------查无此人,请重新输入------------')
        elif panduan2 == '不是':
            print("重新输入选择。")
        else:
            print('你的输入有误。')
    except:
        print('输入操作有错误,请重新输入:《浩浩出品》') 

3、添加学生信息

import csv


def zeng(): 
    try:
        name = str(input('请输入录入学生信息的姓名:'))
        math = int(input('请输入录入学生信息的数学成绩:'))
        English = int(input('请输入录入学生信息的英语成绩:'))
        yuwen = int(input('请输入录入学生信息的语文成绩:'))
        total = English + math + yuwen
        # tesdata = {'name': name,'math': math,'English':English,'yuwen':yuwen,'total':total}
        print('\n', '是否录入学生信息?')
        panduan1 = str(input('输入是与否:'))
        if panduan1 == '是':
            with open('../data/data.csv', mode='a', encoding='utf-8', newline="")as f:
                csv_write = csv.writer(f)
                csv_write.writerow([name, math, English, yuwen, total])
                print('录入成功')
        elif panduan1 == '不是':
            print("重新选择任务")
        else:
            print('你的输入有误请重新输入')
    except:
        print('输入操作有错误,请重新输入:《浩浩出品》') 

3、修改学生信息

import pandas as pd
def gai(): 
    data = pd.read_csv(r'../data/data.csv', encoding='utf-8')
    data1 = data.set_index(data['name'])
    name = str(input('==========请输入你要查找的名字==========:'))
    try:
        if name in data1['name']:
            a = str(input('请输入修改学生信息的姓名:'))
            b = int(input('请输入修改学生信息的数学:'))
            c = int(input('请输入修改学生信息的英语:'))
            d = int(input('请输入修改学生信息的语文:'))
            e = b + c + d
            data1['name'].loc[name] = a
            data1['math'].loc[name] = b
            data1['English'].loc[name] = c
            data1['yuwen'].loc[name] = d
            data1['total'].loc[name] = e
            data = data1.to_csv('data.csv', encoding='utf-8-sig', index=False)
            print('修改成功')
        else:
            print('------------查无此人,请重新输入------------')
    except:
        print('输入操作有错误,请重新输入:《浩浩出品》') 

数据包

会在data文件夹下生成一个data.csv文件

百度网盘链接
提取码:hhhh

这个本来是用来练手的,写一下架构的思路,提升一下代码思维。
代码写的烂嘛,能跑就行了。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

伦杰周

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值