利用Python Tkinter生成学生管理系统
时间: 2023-12-27 15:02:27 浏览: 84
好的,以下是一个简单的学生管理系统,使用Python Tkinter模块,其中可以添加、删除和查看学生的信息:
```python
import tkinter as tk
class Student:
def __init__(self, name, age, gender):
self.name = name
self.age = age
self.gender = gender
class StudentManagementSystem:
def __init__(self):
self.students = []
self.create_gui()
def create_gui(self):
# 创建一个窗口
self.root = tk.Tk()
self.root.title("学生管理系统")
# 创建标签和输入框
tk.Label(self.root, text="姓名: ").grid(row=0, column=0)
self.name_entry = tk.Entry(self.root)
self.name_entry.grid(row=0, column=1)
tk.Label(self.root, text="年龄: ").grid(row=1, column=0)
self.age_entry = tk.Entry(self.root)
self.age_entry.grid(row=1, column=1)
tk.Label(self.root, text="性别: ").grid(row=2, column=0)
self.gender_entry = tk.Entry(self.root)
self.gender_entry.grid(row=2, column=1)
# 创建按钮
tk.Button(self.root, text="添加学生", command=self.add_student).grid(row=3, column=0)
tk.Button(self.root, text="删除学生", command=self.delete_student).grid(row=3, column=1)
# 创建文本框用于显示学生信息
self.textbox = tk.Text(self.root, height=10, width=50)
self.textbox.grid(row=4, column=0, columnspan=2)
# 运行窗口
self.root.mainloop()
def add_student(self):
name = self.name_entry.get()
age = self.age_entry.get()
gender = self.gender_entry.get()
student = Student(name, age, gender)
self.students.append(student)
self.show_students()
def delete_student(self):
name = self.name_entry.get()
for student in self.students:
if student.name == name:
self.students.remove(student)
self.show_students()
def show_students(self):
self.textbox.delete("1.0", tk.END)
for student in self.students:
self.textbox.insert(tk.END, "姓名: {}\n年龄: {}\n性别: {}\n\n".format(student.name, student.age, student.gender))
if __name__ == "__main__":
sms = StudentManagementSystem()
```
在这个程序中,我们首先定义了一个`Student`类,用于存储学生的姓名、年龄和性别信息。然后,我们定义了一个`StudentManagementSystem`类,用于管理学生信息,包括添加、删除和显示学生信息。在`create_gui`方法中,我们创建了一个窗口,并添加了标签、输入框、按钮和文本框。在`add_student`和`delete_student`方法中,我们根据用户输入的信息,添加或删除学生信息,并在文本框中显示当前所有学生的信息。
你可以将上述代码保存为`student_management_system.py`文件并运行,你将会看到一个简单的GUI窗口,其中包含添加、删除和显示学生信息的功能。
当然,这只是一个非常简单的示例。你可以使用Tkinter模块创建更复杂的学生管理系统,包括搜索、编辑和保存学生信息等等。如果你需要进一步学习Tkinter,可以查看Tkinter的官方文档和教程。
阅读全文