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

Python实现学生信息管理系统是一个非常常见的项目,本文将介绍如何实现这一系统,并提供完整的源码和示例。

1. 功能介绍

该学生信息管理系统具备以下功能:

  • 添加学生信息
  • 删除学生信息
  • 修改学生信息
  • 查询学生信息
  • 显示所有学生信息

2. 实现步骤

2.1. 创建数据库

本示例我们使用sqlite3实现存储,因此需要先创建一个数据库文件,执行以下代码:

import sqlite3

conn = sqlite3.connect('student.db')
c = conn.cursor()

# 创建student表
c.execute('''
          CREATE TABLE student
          (id INTEGER PRIMARY KEY,
          name TEXT NOT NULL,
          age INTEGER NOT NULL,
          gender TEXT NOT NULL,
          score INTEGER NOT NULL)
          ''')

conn.commit()
conn.close()

以上代码将创建一个student表,该表包含5个字段:id、name、age、gender和score。

2.2. 添加学生信息

要想添加一个新学生的信息,我们需要向student表中插入一条记录,代码如下:

import sqlite3

conn = sqlite3.connect('student.db')
c = conn.cursor()

# 插入记录
c.execute("INSERT INTO student (name, age, gender, score) VALUES ('张三', 18, '男', 90)")

conn.commit()
conn.close()

以上代码将插入一条记录,包含4个字段:name、age、gender和score。

2.3. 删除学生信息

要删除学生信息,我们需要先确定要删除的学生的id,然后执行以下代码:

import sqlite3

conn = sqlite3.connect('student.db')
c = conn.cursor()

# 删除记录
c.execute("DELETE FROM student WHERE id=?", (1,))

conn.commit()
conn.close()

以上代码将删除id为1的学生记录。

2.4. 修改学生信息

要修改学生信息,我们需要先确定要修改的学生的id,然后执行以下代码:

import sqlite3

conn = sqlite3.connect('student.db')
c = conn.cursor()

# 修改记录
c.execute("UPDATE student SET score=? WHERE id=?", (80, 2))

conn.commit()
conn.close()

以上代码将修改id为2的学生的score为80。

2.5. 查询学生信息

要查询某个学生的信息,我们需要先确定要查询的学生的id,然后执行以下代码:

import sqlite3

conn = sqlite3.connect('student.db')
c = conn.cursor()

# 查询记录
c.execute("SELECT * FROM student WHERE id=?", (2,))
results = c.fetchall()
for r in results:
    print(r)

conn.close()

以上代码将查询id为2的学生的所有信息,并输出到控制台。

2.6. 显示所有学生信息

要显示所有学生的信息,我们需要执行以下代码:

import sqlite3

conn = sqlite3.connect('student.db')
c = conn.cursor()

# 显示所有记录
c.execute("SELECT * FROM student")
results = c.fetchall()
for r in results:
    print(r)

conn.close()

以上代码将查询所有学生的信息,并输出到控制台。

3. 完整源码

以下是完整的源码:

import sqlite3

# 创建数据库
conn = sqlite3.connect('student.db')
c = conn.cursor()

c.execute('''
          CREATE TABLE student
          (id INTEGER PRIMARY KEY,
          name TEXT NOT NULL,
          age INTEGER NOT NULL,
          gender TEXT NOT NULL,
          score INTEGER NOT NULL)
          ''')

# 插入记录
c.execute("INSERT INTO student (name, age, gender, score) VALUES ('张三', 18, '男', 90)")

# 删除记录
c.execute("DELETE FROM student WHERE id=?", (1,))

# 修改记录
c.execute("UPDATE student SET score=? WHERE id=?", (80, 2))

# 查询记录
c.execute("SELECT * FROM student WHERE id=?", (2,))
results = c.fetchall()
for r in results:
    print(r)

# 显示所有记录
c.execute("SELECT * FROM student")
results = c.fetchall()
for r in results:
    print(r)

conn.commit()
conn.close()

4. 示例说明

以下示例说明如何实现向student表中插入多条记录:

import sqlite3

conn = sqlite3.connect('student.db')
c = conn.cursor()

# 插入多条记录
students = [('李四', 19, '男', 92), ('王五', 20, '女', 88), ('小明', 17, '男', 78)]
c.executemany("INSERT INTO student (name, age, gender, score) VALUES (?, ?, ?, ?)", students)

conn.commit()
conn.close()

以上代码将插入3条记录,分别为:李四(19岁,男性,成绩92分)、王五(20岁,女性,成绩88分)和小明(17岁,男性,成绩78分)。

以下示例说明如何将所有学生的成绩加10分:

import sqlite3

conn = sqlite3.connect('student.db')
c = conn.cursor()

# 修改所有学生记录
c.execute("UPDATE student SET score=score+10")

# 显示所有记录
c.execute("SELECT * FROM student")
results = c.fetchall()
for r in results:
    print(r)

conn.commit()
conn.close()

以上代码将将所有学生的成绩都加10分,并输出所有学生的信息到控制台。

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

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

相关文章

  • Python基础学习之简单理解函数

    对于“Python基础学习之简单理解函数”,我们可以从以下几个部分来进行讲解: 一、函数的定义和概述 1.1 函数的作用 在Python中,函数是一段可重复调用的代码块,它能够完成特定的任务,具有以下几个作用: 代码复用:在不同的地方使用同一段代码,提高程序的可读性。 提高代码的可维护性:对于一些需要反复使用的代码,使用函数可以方便后期的维护。 提高代码的复…

    python 2023年6月5日
    00
  • python库JsonSchema验证JSON数据结构使用详解

    Python库JsonSchema验证JSON数据结构使用详解 什么是JsonSchema JsonSchema是一种用于描述JSON数据结构的验证语言,类似于XML的DTD,可以用于验证JSON数据的结构是否符合特定的规范。JsonSchema的文档格式是JSON,所以本身也是JSON数据。 安装JsonSchema库 JsonSchema库可以使用pip…

    python 2023年6月3日
    00
  • Python使用googletrans报错的解决方法

    Python使用googletrans报错的解决方法攻略 在使用Python的googletrans库进行翻译时,有时会遇到报错的问题。这个问题通常是于Google翻译API的限制引起的。本攻将介绍如解决这个问题,并提供两个示例。 解决方法 在解决Python使用googletrans报错的问题时,我们可以试以下方法: 使用代理 修改代码 使用代理 我们可以…

    python 2023年5月13日
    00
  • Python实现自动填写脚本流程详解

    下面是详细的Python实现自动填写脚本流程: 1. 准备工作 在开始开发自动填写脚本之前,需要明确脚本需要自动填写的表单页面的结构,假设我们使用的是浏览器的开发者工具发现该表单页面上有如下元素:1. 文本输入框2. 单选按钮3. 多选按钮4. 下拉框5. 提交按钮 根据这些元素的类型和相应的属性(如 id 或 class),我们可以利用 Python 的 …

    python 2023年5月19日
    00
  • Python编程对列表中字典元素进行排序的方法详解

    当我们的列表中包含了多个字典元素时,我们有时需要对这些字典元素以某种特定方式进行排序。Python提供了多种实现方法,本篇攻略将对 Python 进行对列表中字典元素进行排序的方法进行详细讲解。 方法一:使用sorted函数 sorted函数是Python自带的排序函数,它可以对任意可迭代对象进行排序。和其他的排序方法不同,sorted函数只会返回排序后的结…

    python 2023年5月13日
    00
  • Python 操作 MongoDB数据库的方法(非 ODM)

    Python 操作 MongoDB 数据库的方法(非 ODM) MongoDB 是一个基于分布式文件存储的 NoSQL 数据库,是当前非常流行的文档型数据库之一。Python 作为一门优秀的程序设计语言,拥有很好的语法和语言特性,广泛应用于各个领域,自然也可以用 Python 去操作 MongoDB 数据库。 安装 Python MongoDB 驱动 在使用…

    python 2023年5月14日
    00
  • Python爬虫之解析HTML页面详解

    Python爬虫之解析HTML页面详解 什么是HTML页面 HTML是HyperText Markup Language(超文本标记语言)的缩写,是一种用于创建网页的标准标记语言。HTML文档由HTML元素及其属性组成,这些元素及属性可以用于描述网页的结构和内容。 HTML页面通常由三部分组成:文档结构、文本内容和样式信息。文档结构可以通过HTML标签进行描…

    python 2023年5月14日
    00
  • Python如何使用bokeh包和geojson数据绘制地图

    下面是详细讲解 Python 如何使用 Bokeh 包和 GeoJSON 数据绘制地图的完整攻略。 准备工作 首先需要安装 Bokeh 包和 GeoJSON 包。可以使用 pip 命令进行安装: pip install bokeh pip install geojson 同时还需要一份 GeoJSON 数据,可以在 GeoJSON 数据下载网站 上下载。 绘…

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