python学生信息管理系统实现代码

下面我将详细讲解如何实现Python学生信息管理系统的代码。

准备工作

在开始编写代码之前,我们需要安装Python环境和相关的第三方库,包括flask、pymysql等。具体安装过程可以参考Python官方网站和各种教程。

数据库设计

在编写代码之前,我们需要先设计好数据库中的表结构。在本例中,我们将设计两张表:学生信息表和班级信息表。

学生信息表设计

字段名 数据类型 描述
id int 自增主键
name varchar 学生姓名
age int 学生年龄
gender varchar 学生性别
class_id int 所属班级ID

班级信息表设计

字段名 数据类型 描述
id int 自增主键
name varchar 班级名称
grade varchar 班级所在年级

编写代码

连接数据库

我们首先需要在Python中连接到数据库。在本例中,我们采用pymysql作为Python连接MySQL的库。在连接MySQL之前,我们需要获取MySQL数据库的连接信息,包括数据库名称、用户名、密码、主机名和端口号等,然后使用pymysql库中的连接方法连接到MySQL数据库。

import pymysql

db = pymysql.connect(host='localhost', user='root', password='123456', port=3306, db='test')

创建表

连接到数据库之后,我们需要根据上面的表结构创建学生信息表和班级信息表。在创建表之前,我们需要定义好表结构,包括字段名、数据类型和约束条件等。

cursor = db.cursor()

# 创建学生信息表
create_student_table_sql = """
CREATE TABLE IF NOT EXISTS student (
      id INT AUTO_INCREMENT PRIMARY KEY,
      name VARCHAR(255) NOT NULL,
      age INT NOT NULL,
      gender VARCHAR(10) NOT NULL,
      class_id INT NOT NULL
);
"""
cursor.execute(create_student_table_sql)

# 创建班级信息表
create_class_table_sql = """
CREATE TABLE IF NOT EXISTS class (
      id INT AUTO_INCREMENT PRIMARY KEY,
      name VARCHAR(255) NOT NULL,
      grade VARCHAR(255) NOT NULL
);
"""
cursor.execute(create_class_table_sql)

插入数据

创建好表之后,我们需要往表中插入一些数据,在本例中,我们需要往班级信息表中插入一些数据。

# 插入班级信息
insert_class_sql = """
INSERT INTO class (name, grade) VALUES (%s, %s)
"""
params = [('class1', '202001'), ('class2', '202002'), ('class3', '202003')]
cursor.executemany(insert_class_sql, params)
db.commit()

查询数据

插入数据之后,我们可以使用SELECT语句查询数据。在本例中,我们将查询班级信息表中的所有数据。

# 查询班级信息
select_class_sql = """
SELECT * FROM class
"""
cursor.execute(select_class_sql)
class_info = cursor.fetchall()
print(class_info)

以上代码中,使用SELECT语句查询所有班级信息,并使用fetchall()方法获取所有查询结果。

更新数据

查询到数据之后,我们可以使用UPDATE语句更新数据。在本例中,我们将更新班级信息表中某个班级的信息。

# 更新班级信息
update_class_sql = """
UPDATE class SET name = %s WHERE id = %s
"""
params = ('class4', 1)
cursor.execute(update_class_sql, params)
db.commit()

删除数据

在需要删除数据时,可以使用DELETE语句。在本例中,我们将删除班级信息表中某个班级的信息。

# 删除班级信息
delete_class_sql = """
DELETE FROM class WHERE id = %s
"""
cursor.execute(delete_class_sql, 2)
db.commit()

示例说明

首先,我们将创建一个Python脚本,然后将上面的代码逐行复制到脚本中。然后我们使用命令行或者PyCharm等Python开发环境运行该脚本,可以看到输出结果为:

((1, 'class1', '202001'), (2, 'class2', '202002'), (3, 'class3', '202003'))

这是班级信息表中的所有数据,包括班级ID、班级名称和所在年级。

接着,我们将更新班级信息表中ID为1的班级名称,将其修改为'class4'。然后再查询班级信息表中的所有数据,可以看到输出结果为:

((1, 'class4', '202001'), (2, 'class2', '202002'), (3, 'class3', '202003'))

可以看到,更新后类1的班级名称已经被修改为了'class4'。

最后,我们将删除班级信息表中ID为2的班级信息,然后再次查询班级信息表中的所有数据,可以看到输出结果为:

((1, 'class4', '202001'), (3, 'class3', '202003'))

可以看到,ID为2的班级信息已经被删除了。

以上就是Python学生信息管理系统实现代码的完整攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python学生信息管理系统实现代码 - Python技术站

(0)
上一篇 2023年5月19日
下一篇 2023年5月19日

相关文章

  • python中JWT用户认证的实现

    以下是 “Python 中 JWT 用户认证的实现” 的完整攻略。 第一步:什么是 JWT JWT (JSON Web Token),即用于 Web 应用程序和 API (应用程序接口) 进行认证的开放标准 (RFC 7519)。JWT 是一种轻量级的身份验证和授权机制,旨在为客户端与服务器之间的信息传输提供安全的方式。 JWT 可以通过在 Authoriz…

    python 2023年5月18日
    00
  • 在Python中使用HTMLParser解析HTML的教程

    在Python中使用HTMLParser解析HTML的教程 HTMLParser是Python标准库中的一个模块,可以用于解析HTML文档。在本教程中,我们将介绍如何使用HTMLParser解析HTML文档,并提供两个示例。 安装 HTMLParser是Python标准库中的一部分,因此不需要安装。 解析HTML文档 以下是一个示例,演示如何使用HTMLPa…

    python 2023年5月15日
    00
  • Python实现多张图片合成文字的效果

    Python实现多张图片合成文字的效果 在Python中,可以使用Pillow库实现多张图片合成文字的效果。 步骤一:安装Pillow库 使用pip命令进行安装,命令如下: pip install Pillow 步骤二:编写代码实现多张图片合成文字 可以使用以下代码实现多张图片合成文字的效果: from PIL import Image, ImageDraw…

    python 2023年5月19日
    00
  • python中三种输出格式总结(%,format,f-string)

    Python是一门重要的编程语言,输出结果在代码中也是很重要的一部分。在Python中,常见的三种输出格式是 %, format 和 f-string。这里我们来一一介绍。 % 格式 使用 % 格式的方式,需要将要输出的变量放在一个元组中,然后用 % 符号来引用这些变量。这里我们有一个例子: name = "张三" age = 18 pr…

    python 2023年6月5日
    00
  • Blender Python编程快速入门教程

    Blender Python编程快速入门教程 本文旨在为读者提供一份Blender Python编程快速入门教程,介绍如何使用Python编写Blender插件和脚本。如果您对Blender Python编程还不熟悉,本文将为您介绍Blender Python API(Application Programming Interface)、常用编程概念和示例代…

    python 2023年5月14日
    00
  • 像线程一样管理进程的Python multiprocessing库

    Python multiprocessing库是一个用于并行处理的库,可以用于在多个CPU核心上执行任务,以提高程序的执行速度。用这个库可以实现像线程一样管理进程的效果。下面来介绍一下如何使用Python multiprocessing库来实现像线程一样管理进程的攻略。 使用Python multiprocessing库的步骤: 导入multiprocess…

    python 2023年5月19日
    00
  • ML神器:sklearn的快速使用及入门

    ML神器:sklearn的快速使用及入门 sklearn是Python中非常重要的机器学习框架,拥有强大的数据处理、特征选择、模型建立、模型评估等功能,同时还简单易用,适合机器学习的初学者和高级用户使用。本篇攻略将介绍sklearn的快速使用及入门,涵盖数据集加载、数据预处理、模型训练和评估、模型保存等主要内容。 1. 数据集加载 sklearn中提供了一些…

    python 2023年6月2日
    00
  • 用Python给图像算法做个简单应用界面

    下面是详细讲解“用Python给图像算法做个简单应用界面”的完整攻略,包含两个示例说明。 应用界面的作用 应用界面是一种非常有用的工具,可以帮助用户更方便地使用图像算法。应用界面可以提供以下功能: 显示图像 提供算法选项 显示算法结果 保存算法结果 应用界面可以使用户更轻松地使用图像算法,而不需要编写代码或使用命令行界面。 Python实现应用界面 Pyth…

    python 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部