python实现简单的学生管理系统

Python实现简单的学生管理系统攻略

1. 目标

开发一个简单的学生管理系统,能够实现以下基本功能:

  • 添加学生信息
  • 删除学生信息
  • 修改学生信息
  • 查询学生信息

2. 实现方法

2.1. 存储方式

我们可以采用列表(list)的方式来存储多个学生的信息。其中,每个学生的信息可以用一个字典(dict)来表示。具体结构如下所示。

student = {
    'id': '001',
    'name': '张三',
    'age': 20,
    'gender': '男',
    'score': {
        '语文': 90,
        '数学': 80,
        '英语': 70,
    }
}

2.2. 实现功能

2.2.1 添加学生信息

当添加一个新学生信息时,我们可以让用户输入该学生信息的各个属性(比如学号、姓名、年龄、性别、成绩等),并将这些属性值组成字典,最终存入学生列表中。示例代码如下所示。

def add_student():
    id = input('请输入学号:')
    name = input('请输入姓名:')
    age = input('请输入年龄:')
    gender = input('请输入性别:')
    score = {}
    subject = input('请输入科目:')
    while subject:
        point = input('请输入成绩:')
        score[subject] = point
        subject = input('请输入科目(不输入直接回车表示结束!):')
    student = {
        'id': id,
        'name': name,
        'age': age,
        'gender': gender,
        'score': score
    }
    students.append(student)
    print('添加成功!')

2.2.2 删除学生信息

当删除一个学生信息时,我们可以让用户输入该学生的学号,然后查找列表中是否存在该学号对应的学生信息。如果存在,就将该学生信息从列表中删除。示例代码如下所示。

def delete_student():
    id = input('请输入要删除的学号:')
    for student in students:
        if student['id'] == id:
            students.remove(student)
            print('删除成功!')
            break
    else:
        print('该学号不存在!')

2.2.3 修改学生信息

当修改一个学生信息时,我们可以让用户输入该学生的学号,然后查找列表中是否存在该学号对应的学生信息。如果存在,就让用户输入要修改的属性名和属性值,并将相应属性的值修改为用户输入的值。示例代码如下所示。

def modify_student():
    id = input('请输入要修改的学号:')
    for student in students:
        if student['id'] == id:
            field = input('请输入要修改的属性名:')
            if field in student:
                value = input('请输入修改后的值:')
                student[field] = value
                print('修改成功!')
                break
            else:
                print('该属性不存在!')
                break
    else:
        print('该学号不存在!')

2.2.4 查询学生信息

当查询学生信息时,我们可以让用户输入要查询学生的学号,然后遍历列表,查找是否有该学号对应的学生信息。如果有,则输出该学生信息;否则,输出“该学号不存在”的提示信息。示例代码如下所示。

def query_student():
    id = input('请输入要查询的学号:')
    for student in students:
        if student['id'] == id:
            print('学号:', student['id'])
            print('姓名:', student['name'])
            print('年龄:', student['age'])
            print('性别:', student['gender'])
            print('成绩:')
            for subject, point in student['score'].items():
                print('{}:{}'.format(subject, point))
            break
    else:
        print('该学号不存在!')

3. 示例

3.1. 添加学生信息的示例

输入:

请输入学号:001
请输入姓名:张三
请输入年龄:20
请输入性别:男
请输入科目:语文
请输入成绩:90
请输入科目(不输入直接回车表示结束!):数学
请输入成绩:80
请输入科目(不输入直接回车表示结束!):英语
请输入成绩:70
请输入科目(不输入直接回车表示结束!):

输出:

添加成功!

3.2. 查询学生信息的示例

输入:

请输入要查询的学号:001

输出:

学号: 001
姓名: 张三
年龄: 20
性别: 男
成绩:
语文:90
数学:80
英语:70

4. 总结

通过上述示例,我们可以看到,在Python中实现一个简单的学生管理系统并不是很困难。在此过程中,我们主要是利用Python内建的数据类型(比如列表、字典等)来存储和操作数据。当然,在实际应用时,我们还可能需要考虑更多复杂的情况和需求,比如数据持久化、界面设计等。这些问题可能需要更多的学习和实践。

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

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

相关文章

  • Python基础之文件读取的讲解

    对于Python基础中文件读取的讲解,在这里我会分为三个方面进行讲解:文件操作模式、文件读取的基本方法和使用示例。 文件操作模式 在Python中,文件打开时需要指定一个文件操作模式(mode),不同的操作模式代表不同的文件读写方式。 文件操作模式的常见取值如下: r : 只读模式(默认模式),打开文件后只能读取,不能写入或者修改。 w : 只写模式,打开文…

    python 2023年6月2日
    00
  • python实现图片,视频人脸识别(opencv版)

    Python实现图片、视频人脸识别(opencv版)完整攻略 简介 OpenCV(Open Source Computer Vision)是一个开源的计算机视觉库。它最初由英特尔于1999年发起,如今是由Willow Garage、Itseez、Intel等公司和个人维护的一个跨平台计算机视觉库。OpenCV使用C++语言编写,同时支持Java、Python…

    python 2023年5月18日
    00
  • 利用Python制作一个简单的天气播报系统

    首先我们需要明确天气播报系统的基本功能: 自动获取指定城市的天气数据; 根据天气数据生成语音播报文件; 播放语音文件。 接下来,我将详细讲解如何使用Python完成这个系统。 步骤一:安装依赖库 在开始操作前,我们需要将以下依赖库安装到Python中: requests:用于向API接口发起请求,获取天气数据; pydub:用于生成并播放语音文件。 在命令行…

    python 2023年5月19日
    00
  • 使用Python爬虫库BeautifulSoup遍历文档树并对标签进行操作详解

    BeautifulSoup是Python中一个常用的HTML和XML解析库,它可以帮助我们遍历文档树并对标签进行操作。在本文中,我们将深入讲解BeautifulSoup的用法,并提供两个示例,以便更好地理解这个过程。 BeautifulSoup的基本用法 BeautifulSoup的基本用法如下: 使用BeautifulSoup库的bs4模块解析HTML或X…

    python 2023年5月15日
    00
  • python 通过logging写入日志到文件和控制台的实例

    下面我将介绍Python通过logging写入日志到文件和控制台的实例,具体步骤如下: 1.导入logging模块 import logging 2.设置日志格式 以时间戳、日志级别、模块名称、行号、线程ID、日志信息为格式,具体可根据需求自定义: LOG_FORMAT = "%(asctime)s [%(levelname)s] [%(modul…

    python 2023年6月5日
    00
  • Python 3.9的到来到底是意味着什么

    Python 3.9是Python编程语言的最新版本,于2020年10月5日发布。Python 3.9引入了许多新功能和改进,包括字典合并运算符、类型提示的改进、装饰器的改进、性能改进等。本文将详细讲解Python 3.9的新功能和改进,并提供两个示例。 字典合并运算符 Python 3.9引入了字典合并运算符(|),用于合并两个字典。以下是一个使用字典合并…

    python 2023年5月15日
    00
  • Python venv虚拟环境跨设备迁移的实现

    Python venv虚拟环境是Python自带的虚拟环境管理工具,可以帮助我们创建独立的Python环境,避免不同项目之间的依赖冲突。本文将详细讲解如何实现Python venv虚拟环境跨设备迁移。 创建虚拟环境 要创建虚拟环境,我们可以使用Python自带的venv模块。以下是一个示例,演示如何创建虚拟环境: python -m venv myenv 在…

    python 2023年5月15日
    00
  • Python制作一个多功能音乐播放器

    Python制作一个多功能音乐播放器是一种常见的应用场景,可以用于音乐播放、音乐管理等领域。本文将详细讲解如何使用Python制作一个多功能音乐播放器,包括如何安装和使用Pygame、如何实现音乐播放器、如何使用音乐播放器等。 安装和使用Pygame 首先,我们需要安装和使用Pygame。Pygame是一种Python库,可以用于开发2D游戏、音乐播放器等应…

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