python写的学生信息管理系统+源码

放假在家自学了几天python,掌握了一些基础的知识,编写了一个简单的学生信息管理系统

其基本的思想就是利用列表嵌套存储学生信息

希望能给读者带来一点帮助

C语言写的在这里:
点击查看

java写的在这里:
点击查看

python数据库版本这这里
点击查看

代码如下:
Project.py文件内容:

class Student(object):
    # 建立学生信息储存的列表(嵌套的方式)
    studentInformation = []
    # 对学生对象的数据进行说明
    studentShow = ["学号:", "姓名:", "年龄:"]

    # 录入学生
    def addstudent(self):
        studentNumber = int(input("请输入录入的学生人数:"))
        for i in range(studentNumber):
            sno = input("请输入学号:")
            name = input("请输入姓名:")
            sage = input("请输入年龄:")
            # 建立一个列表,用于暂时存储
            student = [sno, name, sage]
            # 加入学生(判断学号是否重复)
            x = 0
            # 刚开始录入学生时,学号不可能重复
            if len(self.studentInformation) == 0:
                self.studentInformation.append(student)
            # 判断重复
            else:
                while x < len(self.studentInformation):
                    if self.studentInformation[x][0] != sno:
                        x += 1
                    else:
                        print("学号重复!!!\n请重新输入序号!!!")
                        break
                else:
                    self.studentInformation.append(student)
        print("加入成功!!!")

    # 输出学生
    def showstudent(self):
        print("学生信息输出如下:")
        for i in range(len(self.studentInformation)):
            print(self.studentShow[0]+self.studentInformation[i][0], end="    ")
            print(self.studentShow[1] + self.studentInformation[i][1], end="    ")
            print(self.studentShow[2] + self.studentInformation[i][2])

    # 删除学生
    def deletestudent(self):
        x = 0
        sno = input("请输入学生学号:")
        while x < len(self.studentInformation):
            if self.studentInformation[x][0] == sno:
                del self.studentInformation[x]
                print("删除学生成功!!!")
                break
            else:
                x += 1
        else:
            print("不存在当前学生!!!")

    # 查询学生
    def selectstudent(self):
        x = 0
        sno = input("请输入查询学生的学号")
        while x < len(self.studentInformation):
            if self.studentInformation[x][0] == sno:
                print(self.studentShow[0] + self.studentInformation[x][0], end="    ")
                print(self.studentShow[1] + self.studentInformation[x][1], end="    ")
                print(self.studentShow[2] + self.studentInformation[x][2])
                break
            else:
                x += 1
        else:
            print("未查询到当前学生!!!")

    # 修改学生
    def changestudent(self):
        x = 0
        sno = input("请输入修改学生的学号:")
        while x < len(self.studentInformation):
            if self.studentInformation[x][0] == sno:
                name = input("请输入修改后的姓名:")
                sage = input("请输入修改后的年龄:")
                self.studentInformation[x][1] = name
                self.studentInformation[x][2] = sage
                print("修改成功!!!")
                break
            else:
                x += 1

    # 界面打印
    @staticmethod
    def printui():
        print("**************************")
        print("**  输入:0  --退出程序--  **")
        print("**  输入:1  --录入学生--  **")
        print("**  输入:2  --输出学生--  **")
        print("**  输入:3  --删除学生--  **")
        print("**  输入:4  --查询学生--  **")
        print("**  输入:5  --修改学生--  **")
        print("**  输入:6  --保存学生--  **")
        print("**************************")

    # 保存程序
    def data(self):
        # 以追加的形式添加
        dataFile = open("D:\\text.txt", "a")
        for i in range(len(self.studentInformation)):
            dataFile.write(self.studentShow[0] + self.studentInformation[i][0] + "   ")
            dataFile.write(self.studentShow[1] + self.studentInformation[i][1] + "   ")
            dataFile.write(self.studentShow[2] + self.studentInformation[i][2] + "\n")
        dataFile.write("\n\n")
        print("保存成功!!!")
        dataFile.close()

    # 程序调用
    def run(self):
        self.printui()
        number = input("请输入功能前面的代码:")
        # 无限循环
        var = 1
        while var == 1:
            if int(number) == 1:
                self.addstudent()
                self.printui()
                number = input("请输入功能前面的代码:")
            elif int(number) == 2:
                self.showstudent()
                self.printui()
                number = input("请输入功能前面的代码:")
            elif int(number) == 3:
                self.deletestudent()
                self.printui()
                number = input("请输入功能前面的代码:")
            elif int(number) == 4:
                self.selectstudent()
                self.printui()
                number = input("请输入功能前面的代码:")
            elif int(number) == 5:
                self.changestudent()
                self.printui()
                number = input("请输入功能前面的代码:")
            elif int(number) == 6:
                self.data()
                self.printui()
                number = input("请输入功能前面的代码:")
            elif int(number) == 0:
                break
            else:
                print("您输入的序号不对!\n请重新输入!")
                self.printui()
                number = input("请输入功能前面的代码:")
        else:
            print("再见!")
            exit()



text.py文件:

from Project import Student
# 实例化对象
stu = Student()
stu.run()

运行结果:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
保存结果:
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

qq_52889967

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

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

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

打赏作者

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

抵扣说明:

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

余额充值