当前位置: 首页 > 新闻资讯  > 学工系统

手把手教你用Python打造学工系统的迎新功能

本文通过通俗易懂的语言,详细介绍了如何使用Python和SQLite构建一个简单的学工系统,并实现迎新功能。包含具体代码示例。

嘿,大家好!今天咱们聊聊怎么用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实现了学工系统的迎新功能,从数据库建表到添加学生再到图形化界面,每一步都很清晰。希望这篇文章对你有帮助,如果有问题欢迎留言交流!

本站部分内容及素材来源于互联网,如有侵权,联系必删!

相关资讯

    暂无相关的数据...