背景 今天整理一个 Python 练习题,需求描述如下: 程序一: 接收用户输入的名字和成绩,成绩是1-100 间、最多两位小数。 按Q结束输入,并将合法输入的数据写入到一个文件。 程序二:读取程序一输出的文件,然后对成绩计算平均值,并输出最高分和最低分值及姓名。 实现分析 本例用到的知识点: 文件操作,需要 try-except-finally ,处理文件异常; 判断成绩的正则:^[0-9]{1,2}(\.[0-9]{1,2})?$ ,成绩可以是小数点后两位小数; while 循环条件, Python 的逻辑运算是 and / or / not 等关键字,而不是逻辑操作符号; 使用 pd.r 在本篇介绍的 Python 练习题中,我们有两个主要任务:一是收集学生成绩信息并写入文件,二是读取文件并计算成绩的平均值、最高分和最低分。这个练习涉及到多个 Python 编程知识点,包括文件操作、异常处理、正则表达式、逻辑运算、以及使用 pandas 处理数据。 我们来看如何实现成绩信息的收集。在 `score_writer.py` 脚本中,我们使用 `open()` 函数创建一个文件并设置为写入模式。文件路径、编码方式(这里为 UTF-8)都是需要考虑的因素。为了确保输入的成绩有效,我们定义了一个正则表达式模式 `"^[0-9]{1,2}(\.[0-9]{1,2})?$"`,该模式匹配 1 到 100 之间、最多两位小数的成绩。通过 `re.match()` 函数检查输入的成绩是否符合此模式。我们使用 `while` 循环不断接收用户输入,直到用户输入 'Q' 或 'q' 结束。在处理过程中,如果输入的成绩无效,会提示用户重新输入。整个输入过程用 `try-except-finally` 块进行异常处理,确保文件能正确关闭,即使在输入过程中出现错误。 接下来,我们看如何处理成绩数据。在 `score_reader.py` 脚本中,我们导入了 pandas 库,使用 `pd.read_csv()` 函数读取之前写入的 CSV 文件,将其转换为 DataFrame 对象。这里的 DataFrame 是一个二维表格型数据结构,非常适合处理结构化的表格数据。计算平均值、最高分和最低分时,我们利用了 DataFrame 的内置方法:`mean()`、`max()` 和 `min()`,它们分别用于计算某一列的平均值和最大值、最小值。`idxmax()` 和 `idxmin()` 方法返回对应最大值和最小值的索引,这样我们可以找到最高分和最低分的姓名。整个读取过程同样包含异常处理,以防止文件不存在时程序崩溃。 此外,这个练习也展示了 Python 的简洁性。相比其他语言,如 Java,Python 在处理文件读写时的代码量明显更少,这也是 Python 在数据分析领域广受欢迎的原因之一。在处理异常时,Python 使用 `try-except` 结构,易于理解和编写,而在 Java 中,可能需要更多的代码来实现相同的功能。 总结来说,本练习涵盖了以下几个 Python 知识点: 1. 文件操作:使用 `open()` 函数打开文件,`write()` 写入数据,`close()` 关闭文件。 2. 异常处理:`try-except-finally` 用于处理可能出现的错误,确保资源的释放。 3. 正则表达式:用于验证输入成绩的有效性。 4. 逻辑运算:使用 `and`、`or` 和 `not` 关键字进行逻辑判断。 5. pandas 库:读取 CSV 文件,转换为 DataFrame,进行数据处理和计算。 6. DataFrame 方法:`mean()`、`max()`、`min()`、`idxmax()` 和 `idxmin()`,用于数据统计分析。 这些知识点对于 Python 编程初学者来说是非常实用的,通过这个练习,他们可以深入理解 Python 在实际问题中的应用。


































- 粉丝: 3
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 基于51单片机的温室大棚温湿度检测报警系统方案设计书.doc
- 嵌入式系统-概述.ppt
- 单片机的模糊温度控制器的设计实施方案.doc
- ADEL酒店门锁接口软件安装.doc
- 单片机遥控开关设计方案.doc
- 教学实践中如何高效管理计算机实验室.docx
- 图像处理实验研究报告.doc
- 计算机网络系统综合防雷设计实施方案实施方案.doc
- 通信原理2011B答案.doc
- 巧用网络空间-助力学校内涵发展的策略研究.docx
- 试论加强血站档案管理工作信息化建设的有效措施.docx
- MPS系统机械手站单元的设计方案与PLC控制.doc
- 企业应用软件通用安全规范.docx
- Mysql安装注意事项.doc
- 某电子商务项目研究报告.doc
- 应用型大学数据库学科实践教学体系探索.docx



- 1
- 2
前往页