一、Python实现学生成绩管理系统
- 实现思路:
学生成绩管理系统是一种简单的数据库管理系统,要实现其主要分为以下几步:
- 创建数据库及表格。
- 实现添加学生信息功能。
- 实现添加学生成绩功能。
- 实现查询学生信息及成绩功能。
- 实现删除学生信息功能。
-
实现修改学生成绩功能。
-
创建数据库及表格
使用Python内置模块sqlite3创建一个数据库,该数据库包含学生信息表(student_info)和学生成绩表(student_score),表格中包含各自所需的字段。
import sqlite3
def create_table():
conn=sqlite3.connect('student.db')
c=conn.cursor()
c.execute('''CREATE TABLE student_info
(ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
GENDER TEXT NOT NULL,
CLASS CHAR(50),
PHONE CHAR(50));''')
c.execute('''CREATE TABLE student_score
(ID INT PRIMARY KEY NOT NULL,
CHINESE INT NOT NULL,
MATH INT NOT NULL,
ENGLISH INT NOT NULL);''')
conn.commit()
conn.close()
- 实现添加学生信息功能
在student_info表中添加学生基本信息,其中包括ID、姓名、性别、班级、联系方式等字段,对于ID字段可设为自增主键,可以避免主键重复的问题。
def add_student_info(ID,name,gender,class_name,phone):
conn=sqlite3.connect('student.db')
c=conn.cursor()
c.execute('''INSERT INTO student_info (ID,NAME,GENDER,CLASS,PHONE)
VALUES (?,?,?,?,?)''',(ID,name,gender,class_name,phone))
conn.commit()
conn.close()
- 实现添加学生成绩功能
在student_score表中添加学生成绩信息,其中包括ID、语文成绩、数学成绩、英语成绩等字段。
def add_student_score(ID,chinese,math,english):
conn=sqlite3.connect('student.db')
c=conn.cursor()
c.execute('''INSERT INTO student_score (ID,CHINESE,MATH,ENGLISH)
VALUES (?,?,?,?)''',(ID,chinese,math,english))
conn.commit()
conn.close()
- 实现查询学生信息及成绩功能
通过ID字段在student_info表和student_score表中查询得到学生信息和成绩。
def search_info(ID):
conn=sqlite3.connect('student.db')
c=conn.cursor()
c.execute("SELECT * FROM student_info WHERE ID = ?",(ID,))
result=c.fetchall()
return result
def search_score(ID):
conn=sqlite3.connect('student.db')
c=conn.cursor()
c.execute("SELECT * FROM student_score WHERE ID = ?",(ID,))
result=c.fetchall()
return result
- 实现删除学生信息功能
通过ID字段在student_info表和student_score表中删除相应的学生信息和成绩。
def delete_info(ID):
conn=sqlite3.connect('student.db')
c=conn.cursor()
c.execute("DELETE FROM student_info WHERE ID = ?",(ID,))
conn.commit()
conn.close()
def delete_score(ID):
conn=sqlite3.connect('student.db')
c=conn.cursor()
c.execute("DELETE FROM student_score WHERE ID = ?",(ID,))
conn.commit()
conn.close()
- 实现修改学生成绩功能
通过ID字段在student_score表中修改相应的学生成绩。
def update_score(ID,chinese,math,english):
conn=sqlite3.connect('student.db')
c=conn.cursor()
c.execute("UPDATE student_score SET CHINESE = ?, MATH = ?, ENGLISH = ? WHERE ID = ?",(chinese,math,english,ID))
conn.commit()
conn.close()
二、示例说明
示例1:添加学生信息和成绩
create_table() # 创建数据库及表格
add_student_info(1,'张三','男','一班','13812345678') # 添加学生信息
add_student_score(1,80,90,85) # 添加学生成绩
示例2:查询学生信息和成绩
result1=search_info(1) # 查询学生信息
result2=search_score(1) # 查询学生成绩
print(result1,result2)
以上示例均为基本操作,具体可以根据需求灵活运用。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python实现学生成绩管理系统 - Python技术站