首页 > 资讯 > 学工管理系统> 用Python实现黔南学工管理系统的简单实践

用Python实现黔南学工管理系统的简单实践

学工管理系统在线试用
学工管理系统
在线试用
学工管理系统解决方案
学工管理系统
解决方案下载
学工管理系统源码
学工管理系统
源码授权
学工管理系统报价
学工管理系统
产品报价

大家好,今天我要跟大家聊一聊怎么用Python来搞一个“学工管理系统”,而且这个系统是针对“黔南”这个地方的。虽然可能你对“黔南”不太熟悉,但别担心,我来慢慢讲清楚。

 

首先,什么是“学工管理”?学工,也就是学生工作,通常包括学生的成绩、考勤、奖惩记录等等。这些信息需要一个系统来管理,方便老师或者管理人员查看和操作。而“黔南”呢,是一个地方,比如贵州的黔南布依族苗族自治州,可能有些学校或者机构在那边,所以我们就以“黔南”为例来设计这个系统。

 

那我们为什么用Python来做这个系统呢?因为Python语法简单,写起来快,适合做快速开发。而且Python有很多库,比如Django、Flask,可以用来做Web应用。不过今天我不打算用框架,而是用最基础的Python代码来演示一个简单的系统,这样更适合初学者理解。

 

好了,不啰嗦了,咱们直接上代码。首先,我们需要一个数据结构来保存学生的信息。可以用字典或者列表,但为了更方便,我们可以用一个类来定义学生对象。比如:

 

    class Student:
        def __init__(self, student_id, name, major, score):
            self.student_id = student_id
            self.name = name
            self.major = major
            self.score = score

        def __str__(self):
            return f"学号:{self.student_id},姓名:{self.name},专业:{self.major},成绩:{self.score}"
    

 

这个Student类包含了学生的学号、姓名、专业和成绩,还有__str__方法,方便打印出来看。

 

接下来,我们要有一个学生列表,用来保存所有的学生信息。比如:

 

    students = []
    

 

然后,我们可以写一些函数来添加学生、查找学生、修改成绩、删除学生等。比如添加学生:

 

    def add_student(student_id, name, major, score):
        new_student = Student(student_id, name, major, score)
        students.append(new_student)
        print("学生信息已添加!")
    

 

查找学生的话,可以根据学号或者姓名来找:

 

    def find_student_by_id(student_id):
        for student in students:
            if student.student_id == student_id:
                return student
        return None

    def find_student_by_name(name):
        for student in students:
            if student.name == name:
                return student
        return None
    

 

修改成绩的话,可以这样写:

 

    def update_score(student_id, new_score):
        student = find_student_by_id(student_id)
        if student:
            student.score = new_score
            print("成绩已更新!")
        else:
            print("未找到该学生!")
    

 

删除学生的话,也可以这样:

 

    def delete_student(student_id):
        global students
        for i, student in enumerate(students):
            if student.student_id == student_id:
                del students[i]
                print("学生信息已删除!")
                return
        print("未找到该学生!")
    

 

然后,我们还需要一个菜单,让用户可以选择不同的操作。比如:

 

学工管理

    def menu():
        while True:
            print("\n--- 学工管理系统 ---")
            print("1. 添加学生")
            print("2. 查找学生(按学号)")
            print("3. 查找学生(按姓名)")
            print("4. 修改成绩")
            print("5. 删除学生")
            print("6. 显示所有学生")
            print("0. 退出")

            choice = input("请选择操作:")

            if choice == "1":
                student_id = input("请输入学号:")
                name = input("请输入姓名:")
                major = input("请输入专业:")
                score = float(input("请输入成绩:"))
                add_student(student_id, name, major, score)

            elif choice == "2":
                student_id = input("请输入学号:")
                student = find_student_by_id(student_id)
                if student:
                    print(student)
                else:
                    print("未找到该学生!")

            elif choice == "3":
                name = input("请输入姓名:")
                student = find_student_by_name(name)
                if student:
                    print(student)
                else:
                    print("未找到该学生!")

            elif choice == "4":
                student_id = input("请输入学号:")
                new_score = float(input("请输入新成绩:"))
                update_score(student_id, new_score)

            elif choice == "5":
                student_id = input("请输入学号:")
                delete_student(student_id)

            elif choice == "6":
                if not students:
                    print("当前没有学生信息!")
                else:
                    for student in students:
                        print(student)

            elif choice == "0":
                print("程序已退出!")
                break

            else:
                print("无效选项,请重新选择!")
    

 

最后,我们运行一下这个菜单:

 

    if __name__ == "__main__":
        menu()
    

 

这样,一个简单的学工管理系统就完成了。虽然功能比较简单,但已经具备了基本的学生信息管理能力。如果你有兴趣,还可以继续扩展,比如加入数据库支持、图形界面、权限管理等功能。

 

比如,我们可以用SQLite来持久化数据,这样即使程序关闭后,数据也不会丢失。下面是一个简单的例子:

 

    import sqlite3

    def init_db():
        conn = sqlite3.connect('student.db')
        c = conn.cursor()
        c.execute('''CREATE TABLE IF NOT EXISTS students
                     (id TEXT PRIMARY KEY, name TEXT, major TEXT, score REAL)''')
        conn.commit()
        conn.close()

    def save_to_db(student):
        conn = sqlite3.connect('student.db')
        c = conn.cursor()
        c.execute("INSERT INTO students VALUES (?, ?, ?, ?)",
                  (student.student_id, student.name, student.major, student.score))
        conn.commit()
        conn.close()

    def load_from_db():
        conn = sqlite3.connect('student.db')
        c = conn.cursor()
        c.execute("SELECT * FROM students")
        rows = c.fetchall()
        for row in rows:
            student = Student(row[0], row[1], row[2], row[3])
            students.append(student)
        conn.close()
    

 

然后在主函数中调用:

 

    if __name__ == "__main__":
        init_db()
        load_from_db()
        menu()
    

 

这样,数据就被保存到数据库中了,下次运行程序时也能读取出来。

 

不过,这里只是简单地演示了一下,如果要做一个完整的系统,还需要考虑更多问题,比如用户登录、权限控制、数据备份、日志记录等等。这些都可以在未来逐步完善。

 

总结一下,今天我们用Python写了一个简单的学工管理系统,针对的是“黔南”地区的应用场景。虽然功能有限,但已经能实现基本的学生信息管理。如果你对Python感兴趣,或者想了解如何用代码解决实际问题,那这篇文章应该对你有帮助。

 

希望你能通过这篇文章,感受到编程的魅力,也鼓励你自己动手尝试,哪怕只是一个小小的项目,也能让你收获很多。毕竟,代码不是写出来的,是敲出来的!

 

如果你有任何问题,或者想进一步优化这个系统,欢迎留言交流。我们下期再见!

本站部分内容及素材来源于互联网,如有侵权,联系必删!

标签:
首页
关于我们
在线试用
电话咨询