python实现简单成绩录入系统

Python 实现简单成绩录入系统

1. 设计数据结构

在编写代码之前,我们需要先确定数据结构。对于一个简单的成绩录入系统,我们可以考虑使用字典来存储数据。字典中的键可以是学生姓名,值可以是成绩列表。例如,我们可以将数据结构设计成以下形式:

scores = {
"张三": [80, 90, 85],
"李四": [75, 85, 80],
"王五": [90, 95, 85]
}

2. 实现功能代码

有了数据结构之后,我们可以开始实现功能代码。以下是一个实现简单成绩录入系统的 Python 代码:

scores = {}

def input_scores():
    name = input("请输入学生姓名:")
    score = input("请输入学生成绩(用空格分隔):")
    score_list = score.split()
    score_list = [int(x) for x in score_list]
    scores[name] = score_list

def output_scores():
    print("{:<10}{:<20}{:<20}{:<20}".format("学生姓名", "语文成绩", "数学成绩", "英语成绩"))
    for name, score_list in scores.items():
        chinese_score = score_list[0]
        math_score = score_list[1]
        english_score = score_list[2]
        print("{:<10}{:<20}{:<20}{:<20}".format(name, chinese_score, math_score, english_score))

while True:
    print("请输入要进行的操作:")
    print("1. 成绩录入")
    print("2. 成绩输出")
    print("3. 退出系统")

    choice = input("请选择操作:")

    if choice == "1":
        input_scores()
    elif choice == "2":
        output_scores()
    elif choice == "3":
        break
    else:
        print("输入错误,请重新输入!")

运行上述代码,会出现一个菜单:

请输入要进行的操作:
1. 成绩录入
2. 成绩输出
3. 退出系统

用户可以输入 1、2、3 中的一个数字选择相应的功能。如果选择成绩录入,则会提示用户输入学生姓名和成绩,并将其保存到字典中;如果选择成绩输出,则会将目前保存的所有成绩输出;如果选择退出系统,则会退出程序。

示例说明:

以下是一个示例说明,使用这个程序来记录三个学生的成绩:

输入

请输入要进行的操作:
1. 成绩录入
2. 成绩输出
3. 退出系统
请选择操作:1
请输入学生姓名:张三
请输入学生成绩(用空格分隔):80 90 85
请输入要进行的操作:
1. 成绩录入
2. 成绩输出
3. 退出系统
请选择操作:1
请输入学生姓名:李四
请输入学生成绩(用空格分隔):75 85 80
请输入要进行的操作:
1. 成绩录入
2. 成绩输出
3. 退出系统
请选择操作:1
请输入学生姓名:王五
请输入学生成绩(用空格分隔):90 95 85
请输入要进行的操作:
1. 成绩录入
2. 成绩输出
3. 退出系统
请选择操作:2
学生姓名    语文成绩                数学成绩                英语成绩
张三        80                    90                    85                
李四        75                    85                    80                
王五        90                    95                    85                
请输入要进行的操作:
1. 成绩录入
2. 成绩输出
3. 退出系统
请选择操作:3

输出

学生姓名    语文成绩                数学成绩                英语成绩
张三        80                    90                    85                
李四        75                    85                    80                
王五        90                    95                    85 

可见,程序正确地记录了三个学生的成绩,并能够将它们输出。

另外一个示例说明:

以下是另外一个示例说明,可以使用一个文本文件来输入成绩信息:

输入

在程序目录下新建一个文本文件“scores.txt”,输入以下内容:

张三 80 90 85
李四 75 85 80
王五 90 95 85

然后打开 Python 解释器,输入以下代码:

scores = {}

def read_scores(filename):
    with open(filename, "r") as f:
        for line in f:
            parts = line.strip().split()
            name = parts[0]
            score_list = [int(x) for x in parts[1:]]
            scores[name] = score_list

read_scores("scores.txt")
output_scores()

运行代码后,会输出以下内容:

学生姓名    语文成绩                数学成绩                英语成绩
张三        80                    90                    85                
李四        75                    85                    80                
王五        90                    95                    85

可见,程序正确地读取了保存在文件中的成绩信息,并能够将其输出。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python实现简单成绩录入系统 - Python技术站

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

相关文章

  • python 读取、写入txt文件的示例

    关于python读取、写入txt文件的示例,以下是完整的攻略过程: 准备工作 在使用Python进行txt文件读写之前,我们需要了解以下两个方法: open() 方法:用于打开一个文件,并且返回文件对象,可实现读写文件等操作。 文件对象的 read() 和 write() 方法:read() 用于读取文件中的内容,而 write() 用于写入内容到文件中。 …

    python 2023年6月5日
    00
  • python队列基本操作和多线程队列

    python队列基本操作和多线程队列的完整攻略如下: 一、Python队列基本操作 1. 创建队列 Python标准库提供了queue模块来支持队列操作。我们可以使用queue.Queue类来创建一个队列: import queue q = queue.Queue() 2. 向队列中添加元素 使用put()方法向队列中添加元素: q.put(‘item’) …

    python 2023年5月13日
    00
  • Python Flask 实现 HTML 文件压缩案例代码(9 级压缩)

    下面是使用Python Flask实现HTML文件压缩的攻略: 安装Flask和Gzip 在开始之前,需要确保已经安装了Flask和Gzip。可以使用以下命令安装它们: pip install Flask pip install Flask-Gzip 实现HTML文件压缩 在Flask应用程序中,可以使用Flask-Gzip扩展来实现HTML文件压缩。以下是…

    python 2023年5月14日
    00
  • 简洁的十分钟Python入门教程

    这里是“简洁的十分钟Python入门教程”的详细攻略: Step 1. 下载Python 首先,我们需要到Python官网(https://www.python.org/downloads/)下载并安装Python。根据自己的操作系统,选择对应的安装包。 Step 2. 查看Python版本 安装成功后,我们可以通过以下代码确认Python版本: pytho…

    python 2023年5月14日
    00
  • 在 Python 中绘制直方图的时间序列

    【问题标题】:Plot timeseries of histograms in Python在 Python 中绘制直方图的时间序列 【发布时间】:2023-04-06 09:49:01 【问题描述】: 我正在尝试在 Python 中绘制时间序列的直方图。 There has been a similar question about this, but i…

    Python开发 2023年4月6日
    00
  • 使用python脚本自动创建pip.ini配置文件代码实例

    下面是使用python脚本自动创建pip.ini配置文件的完整攻略: 什么是pip.ini? pip.ini是pip配置文件,包含了一些配置信息,如设置pip源、设置代理等。当使用pip安装或更新Python库时,会从pip.ini文件中读取相应的配置信息,并据此执行相应的操作。 如果没有pip.ini文件,pip会使用默认配置信息进行操作。但是,如果你需要…

    python 2023年5月14日
    00
  • python中的生成器、迭代器、装饰器详解

    Python中的生成器、迭代器、装饰器详解 生成器 生成器是可以迭代的,但只能迭代一次,因为他们并不把所有的值都放在内存中,而是在运行时生成值。生成器是一种特殊的迭代器,使用yield语句返回值。定义一个生成器的方式是将函数中的返回语句换成yield语句。 下面是一个简单的生成器示例,生成器函数gnum()使用yield语句生成一个简单的数列: def gn…

    python 2023年5月14日
    00
  • 浅谈html5之sse服务器发送事件EventSource介绍

    浅谈html5之sse服务器发送事件EventSource介绍是一篇关于HTML5中EventSource的使用的介绍性文章。文章的主要内容包括: 简介 介绍什么是EventSource,EventSource的作用是什么,它与WebSocket的区别是什么。 使用方法 如何创建EventSource对象 如何监听EventSource的消息事件 如何关闭E…

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