嘿,大家好!今天咱们聊聊怎么用Python做一个学工系统的迎新功能。听起来是不是很酷?别急,跟着我一步步来,保证你也能轻松搞定!
首先,我们需要一个数据库来存储新生的信息。这里我们用SQLite,因为它简单又轻便。先创建一个表来保存学生的基本信息,比如名字、学号、专业啥的。
import sqlite3
# 连接到SQLite数据库(如果文件不存在会自动创建)
conn = sqlite3.connect('school_system.db')
cursor = conn.cursor()
# 创建students表
cursor.execute('''
CREATE TABLE IF NOT EXISTS students (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
student_id TEXT UNIQUE NOT NULL,
major TEXT NOT NULL
)
''')
# 提交更改并关闭连接
conn.commit()
conn.close()
接下来,我们要写个脚本来添加新生。比如,有个叫李华的同学要入学了,我们就把他的信息存进去。

def add_student(name, student_id, major):
conn = sqlite3.connect('school_system.db')
cursor = conn.cursor()
try:
cursor.execute('INSERT INTO students (name, student_id, major) VALUES (?, ?, ?)',
(name, student_id, major))
print(f"{name}已成功注册!")
except sqlite3.IntegrityError:
print("该学号已存在,请检查!")
conn.commit()
conn.close()
# 示例:添加李华
add_student('李华', 'S12345678', '计算机科学')
然后,为了让迎新更有趣,我们可以做个界面,让用户输入信息。这里用tkinter库来做个简单的GUI。
import tkinter as tk
from tkinter import messagebox
def submit():
name = entry_name.get()
student_id = entry_student_id.get()
major = entry_major.get()
if not name or not student_id or not major:
messagebox.showerror("错误", "所有字段都必须填写!")
return
add_student(name, student_id, major)
entry_name.delete(0, tk.END)
entry_student_id.delete(0, tk.END)
entry_major.delete(0, tk.END)
root = tk.Tk()
root.title("学工系统 - 迎新")
label_name = tk.Label(root, text="姓名:")
label_name.grid(row=0, column=0, padx=10, pady=5)
entry_name = tk.Entry(root)
entry_name.grid(row=0, column=1, padx=10, pady=5)
label_student_id = tk.Label(root, text="学号:")
label_student_id.grid(row=1, column=0, padx=10, pady=5)
entry_student_id = tk.Entry(root)
entry_student_id.grid(row=1, column=1, padx=10, pady=5)
label_major = tk.Label(root, text="专业:")
label_major.grid(row=2, column=0, padx=10, pady=5)
entry_major = tk.Entry(root)
entry_major.grid(row=2, column=1, padx=10, pady=5)
button_submit = tk.Button(root, text="提交", command=submit)
button_submit.grid(row=3, column=0, columnspan=2, pady=10)
root.mainloop()
最后,运行这个程序,你就能看到一个窗口,输入新生信息后点击提交,数据就会被记录到数据库里啦。
总结一下,我们用Python实现了学工系统的迎新功能,从数据库建表到添加学生再到图形化界面,每一步都很清晰。希望这篇文章对你有帮助,如果有问题欢迎留言交流!
