我们提供学生信息管理系统招投标所需全套资料,包括学工系统介绍PPT、学生管理系统产品解决方案、
学生管理系统产品技术参数,以及对应的标书参考文件,详请联系客服。
大家好,今天咱们来聊一聊“学工管理”和“公司”这两个词。听起来好像挺专业的,但其实它们在计算机领域里,就是一些数据的管理和操作问题。比如,学校里的学生信息、教师信息、课程安排这些都属于学工管理;而公司的话,可能涉及员工档案、部门结构、项目分配之类的。
那么问题来了,如果我要做一个系统,既能管理学工信息,又能处理公司相关的数据,该怎么下手呢?今天我就带大家用Python写一个简单的小系统,既实用又容易理解。不需要复杂的框架,也不需要高深的算法,只需要一点基本的编程知识和一点点数据库的知识。
首先,我们得明确一下这个系统的功能需求。假设我们要做的系统有以下几个主要功能:
添加学生或员工的信息
查询学生或员工的信息
修改学生或员工的信息
删除学生或员工的信息
显示所有学生或员工的信息
那接下来,我们就从最基础的开始,先设计数据库。这里我选择用SQLite,因为它是一个轻量级的数据库,不需要安装服务器,直接在本地就可以运行。而且Python自带了sqlite3模块,非常方便。
首先,我们需要创建一个数据库,然后创建两个表:一个是学生表(students),另一个是员工表(employees)。当然,为了统一管理,也可以把两者合并成一个表,不过这里为了区分,我们还是分开处理吧。
接下来,我会写出具体的代码,让大家看看怎么操作。
import sqlite3
# 连接到数据库,如果不存在就创建
conn = sqlite3.connect('school_company.db')
cursor = conn.cursor()
# 创建学生表
cursor.execute('''
CREATE TABLE IF NOT EXISTS students (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
age INTEGER,
major TEXT,
student_id TEXT UNIQUE
)
''')
# 创建员工表
cursor.execute('''
CREATE TABLE IF NOT EXISTS employees (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
age INTEGER,
department TEXT,
employee_id TEXT UNIQUE
)
''')
# 提交更改
conn.commit()
print("数据库和表已创建成功!")
这段代码的作用是连接到一个叫school_company.db的数据库文件,如果没有这个文件,它会自动创建。然后创建两个表,分别是students和employees,分别用于存储学生和员工的信息。
现在,我们已经建好了数据库,接下来可以尝试插入一些数据试试看。
# 插入学生信息
cursor.execute("INSERT INTO students (name, age, major, student_id) VALUES (?, ?, ?, ?)",
("张三", 20, "计算机科学", "S123456"))
cursor.execute("INSERT INTO students (name, age, major, student_id) VALUES (?, ?, ?, ?)",
("李四", 22, "软件工程", "S123457"))
# 插入员工信息
cursor.execute("INSERT INTO employees (name, age, department, employee_id) VALUES (?, ?, ?, ?)",
("王五", 30, "技术部", "E12345"))
cursor.execute("INSERT INTO employees (name, age, department, employee_id) VALUES (?, ?, ?, ?)",
("赵六", 28, "市场部", "E12346"))
# 提交更改
conn.commit()
print("数据已插入成功!")
这样,我们就往数据库里加了几个学生和员工的数据。接下来,我们可以写一些查询语句,看看能不能查出来。
# 查询所有学生
cursor.execute("SELECT * FROM students")
students = cursor.fetchall()
for student in students:
print(student)
# 查询所有员工
cursor.execute("SELECT * FROM employees")
employees = cursor.fetchall()
for employee in employees:
print(employee)
运行这段代码后,应该能看到之前插入的学生和员工信息被打印出来了。
接下来,我们还可以实现更新和删除的功能。比如,如果某个学生的专业信息错了,我们可以更新它;或者如果某个员工离职了,我们可以删除他。
# 更新学生信息
cursor.execute("UPDATE students SET major = ? WHERE student_id = ?",
("人工智能", "S123456"))
# 删除员工信息
cursor.execute("DELETE FROM employees WHERE employee_id = ?", ("E12346",))
# 提交更改
conn.commit()
print("数据已更新和删除!")
这时候再查询一次,就能看到更新后的结果了。
到这里,我们已经完成了基本的CRUD操作(增删改查)。但光有这些还不够,我们还需要一个更友好的交互方式。比如,用户可以通过命令行输入指令,而不是每次都去修改代码。
那我们可以写一个简单的菜单系统,让用户可以选择不同的操作。比如,输入1表示添加学生,输入2表示添加员工,输入3表示查询等等。
def main():
while True:
print("\n请选择操作:")
print("1. 添加学生")
print("2. 添加员工")
print("3. 查询学生")
print("4. 查询员工")
print("5. 修改学生")
print("6. 修改员工")
print("7. 删除学生")
print("8. 删除员工")
print("9. 退出")
choice = input("请输入选项:")
if choice == '1':
name = input("请输入学生姓名:")
age = int(input("请输入学生年龄:"))
major = input("请输入专业:")
student_id = input("请输入学号:")
cursor.execute("INSERT INTO students (name, age, major, student_id) VALUES (?, ?, ?, ?)",
(name, age, major, student_id))
conn.commit()
print("学生信息已添加!")
elif choice == '2':
name = input("请输入员工姓名:")
age = int(input("请输入员工年龄:"))
department = input("请输入部门:")
employee_id = input("请输入工号:")
cursor.execute("INSERT INTO employees (name, age, department, employee_id) VALUES (?, ?, ?, ?)",
(name, age, department, employee_id))
conn.commit()
print("员工信息已添加!")
elif choice == '3':
cursor.execute("SELECT * FROM students")
students = cursor.fetchall()
for student in students:
print(student)
elif choice == '4':
cursor.execute("SELECT * FROM employees")
employees = cursor.fetchall()
for employee in employees:
print(employee)
elif choice == '5':
student_id = input("请输入要修改的学生学号:")
new_major = input("请输入新的专业:")
cursor.execute("UPDATE students SET major = ? WHERE student_id = ?",
(new_major, student_id))
conn.commit()
print("学生信息已更新!")
elif choice == '6':
employee_id = input("请输入要修改的员工工号:")
new_department = input("请输入新的部门:")
cursor.execute("UPDATE employees SET department = ? WHERE employee_id = ?",
(new_department, employee_id))
conn.commit()
print("员工信息已更新!")
elif choice == '7':
student_id = input("请输入要删除的学生学号:")
cursor.execute("DELETE FROM students WHERE student_id = ?", (student_id,))
conn.commit()
print("学生信息已删除!")
elif choice == '8':
employee_id = input("请输入要删除的员工工号:")
cursor.execute("DELETE FROM employees WHERE employee_id = ?", (employee_id,))
conn.commit()
print("员工信息已删除!")
elif choice == '9':
print("退出程序...")
break
else:
print("无效选项,请重新输入!")
if __name__ == "__main__":
main()
这样,我们就有了一个简单的命令行界面,用户可以根据提示进行操作。虽然看起来有点简陋,但对于一个小型系统来说已经足够了。
当然,这只是一个非常基础的版本。如果要真正应用到实际中,还需要考虑更多的功能,比如数据验证、权限控制、日志记录、错误处理等等。不过对于学习目的来说,这个例子已经很实用了。
总的来说,学工管理和公司系统在计算机领域中其实就是一个数据管理的问题。通过数据库和编程语言的结合,我们可以轻松地实现对这些数据的增删改查。而Python作为一个易学易用的语言,非常适合做这样的小工具。

如果你对这个系统感兴趣,不妨自己动手试一试。也许你还能扩展出更多功能,比如生成报表、导出数据、甚至开发一个图形界面。总之,只要你想,技术就不会限制你。
希望这篇文章能对你有所帮助,也欢迎你在评论区留言交流心得!