嘿,大家好!今天我要给大家讲讲“校园宿舍管理系统”是怎么回事。首先,我们要明白这个系统是干嘛的——它主要是帮助学校更好地管理学生宿舍的分配、入住、退宿等事务。
首先,我们得有个数据库来存储信息,比如学生的姓名、宿舍号、入住时间等等。这里我用的是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来构建一个基本的宿舍管理系统。
