嘿,大家好!今天我要给大家讲讲“校园宿舍管理系统”是怎么回事。首先,我们要明白这个系统是干嘛的——它主要是帮助学校更好地管理学生宿舍的分配、入住、退宿等事务。
首先,我们得有个数据库来存储信息,比如学生的姓名、宿舍号、入住时间等等。这里我用的是SQLite,因为它简单易用,适合初学者。创建数据库和表的代码如下:
import sqlite3 def create_db(): conn = sqlite3.connect('dormitory.db') cursor = conn.cursor() cursor.execute('''CREATE TABLE IF NOT EXISTS students ( id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL, dormitory TEXT NOT NULL, check_in_date DATE NOT NULL );''') conn.commit() conn.close() create_db()
接下来是添加学生到宿舍的功能。我们可以让用户输入学生的姓名、宿舍号和入住日期,然后将这些信息存入数据库。这部分代码如下:
def add_student(name, dormitory, check_in_date): conn = sqlite3.connect('dormitory.db') cursor = conn.cursor() cursor.execute("INSERT INTO students (name, dormitory, check_in_date) VALUES (?, ?, ?)", (name, dormitory, check_in_date)) conn.commit() conn.close() # 使用函数 add_student('张三', 'A栋101', '2023-09-01')
当然,我们还需要一个界面来让用户操作。这里我用的是Python的Tkinter库来做一个简单的GUI(图形用户界面)。这个界面可以让用户输入信息,并调用上面的函数来执行相应的操作。
import tkinter as tk from tkinter import messagebox def submit(): name = entry_name.get() dormitory = entry_dormitory.get() check_in_date = entry_check_in_date.get() if not all([name, dormitory, check_in_date]): messagebox.showerror('错误', '所有字段都必须填写!') return add_student(name, dormitory, check_in_date) messagebox.showinfo('成功', '学生信息已成功添加!') root = tk.Tk() root.title('宿舍管理系统') tk.Label(root, text='姓名:').grid(row=0, column=0) tk.Label(root, text='宿舍号:').grid(row=1, column=0) tk.Label(root, text='入住日期:').grid(row=2, column=0) entry_name = tk.Entry(root) entry_dormitory = tk.Entry(root) entry_check_in_date = tk.Entry(root) entry_name.grid(row=0, column=1) entry_dormitory.grid(row=1, column=1) entry_check_in_date.grid(row=2, column=1) tk.Button(root, text='提交', command=submit).grid(row=3, column=1) root.mainloop()
看,是不是很简单?通过这个小项目,我们可以学习到如何使用Python和SQLite来构建一个基本的宿舍管理系统。