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学习之集合set

    关于Python集合(set)的学习攻略,我会从以下几个方面进行全面讲解: 集合的定义和常见操作 集合的创建方式和常见使用场景 集合的高级操作和其它相关内容 1. 集合的定义和常见操作 集合是Python中的一个数据类型,它是由一组元素组成的无序、不重复的集合。集合可以进行的常见操作有: 添加元素:利用add()函数向集合中添加元素 删除元素:利用remov…

    python 2023年5月13日
    00
  • 举例介绍Python中的25个隐藏特性

    Python是一门非常强大的编程语言,拥有许多隐藏的特性,这些特性可以帮助我们更好地编程。本篇攻略将介绍Python中25个隐藏特性,包括但不限于: 1. 列表推导式 列表推导式提供了一种简洁的方式来生成列表。例如: squares = [x**2 for x in range(1, 6)] print(squares) # 输出:[1, 4, 9, 16,…

    python 2023年5月14日
    00
  • Python 时间操作datetime详情

    Python 时间操作datetime详情 datetime是Python标准库中一个非常重要的时间操作库,可以用于处理时间,日期,时间戳等相关的操作。在Python编程中,经常需要使用到datetime进行时间操作,因此深入了解datetime是能够让我们更高效、准确的编写代码的重要一环。 导入datetime模块 首先,在使用datetime之前我们需要…

    python 2023年6月2日
    00
  • Python制作Windows系统服务

    对于Python制作Windows系统服务的完整攻略,可以按照以下步骤进行: 1. 安装pywin32模块 在制作Windows系统服务之前,需要先安装pywin32模块,它是Python在Windows操作系统下的一个扩展库,可以实现操作Windows系统的一些功能,包括服务的创建和管理。 可以使用pip安装pywin32模块,命令如下: pip inst…

    python 2023年5月30日
    00
  • Python之random库的常用函数有哪些

    接下来我会详细讲解“Python之random库的常用函数有哪些”的完整攻略。 一、背景介绍 Python之random库是Python标准库中的一个模块,主要用来生成随机数。它提供了各种生成随机数的函数,包括生成整数、浮点数、随机序列等。其中,常用的函数包括: 二、常用函数介绍 1. random() random()函数用于生成0到1之间的随机浮点数。示…

    python 2023年6月3日
    00
  • Python中Parser的超详细用法实例

    Python中Parser的超详细用法实例 1. 简介 在Python中,Parser是一种解析器,可以用来解析各种文本数据如html、xml等标记语言。Python中的Parser工具有多种,如html.parser、xml.etree.ElementTree、BeautifulSoup等。这些工具可以用来解析不同格式的标记语言,将其转化为Python中的…

    python 2023年6月3日
    00
  • IronPython连接MySQL的方法步骤

    以下是”IronPython连接MySQL的方法步骤”的详细讲解。 环境准备 在开始之前,您需要事先准备以下环境: 安装 IronPython 运行环境,IronPython 支持 .NET Framework 4.0 或更高版本。 安装 MySQL 数据库,并创建测试表(例如 employee)和数据(例如 id=1, name=’Alice’)。 步骤 …

    python 2023年5月31日
    00
  • python list是否包含另一个list所有元素的实例

    以下是详细讲解“Python List是否包含另一个List所有元素的实例”的完整攻略。 在Python中,可以使用多种方法判断一个List是否包含另一个List所有元素。本文将介绍两种常用的方法,并提供两个示例说明。 方法一:使用all()函数和in关键字 可以使用all()函数和in关键字的方法判断一个List是否包含另一个List所有元素。例如: ls…

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