news 2026/4/15 20:48:33

思考与练习(第十章 文件与数据格式化)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
思考与练习(第十章 文件与数据格式化)

一、单项选择题(本大题共 15 小题)

1、在 Python 中,打开文件时使用的内置函数是:

① load()

② read()

③ open()

④ file()

2、以下哪种文件打开模式会清空文件内容?

① 'r'

② 'w'

③ 'a'

④ 'x'

3、使用 with 语句打开文件的主要优点是:

① 文件读取速度更快

② 自动处理文件关闭

③ 支持更大的文件

④ 可以同时打开多个文件

4、以下代码的输出结果是:

with open("test.txt", "w") as f: f.write("Hello\nWorld")with open("test.txt", "r") as f: content = f.read()print(len(content))

① 2

② 10

③ 11

④ 12

5、在 CSV 文件中,默认的分隔符是:

① 制表符

② 逗号

③ 分号

④ 空格

6、以下哪个方法可以一次性读取文件的所有行,返回列表?

① read()

② readline()

③ readlines()

④ load()

7、使用 json.dump() 将 Python 对象写入文件时,indent 参数的作用是:

① 指定编码格式

② 美化输出,添加缩进

③ 确保中文正常显示

④ 指定数据类型

8、以下代码的功能是:

with open("data.txt", "a") as f: f.write("new data\n")

① 读取文件内容

② 覆盖文件内容

③ 在文件末尾追加内容

④ 创建新文件

9、在文件操作中,'r+' 模式表示:

① 只读

② 只写

③ 读写(从开头)

④ 读写(追加)

10、以下哪个异常表示文件不存在?

① FileExistsError

② FileNotFoundError

③ PermissionError

④ IOError

11、CSV 文件的优点不包括:

① 人类可读

② 跨平台兼容

③ 支持复杂嵌套结构

④ 易于导入到电子表格

12、以下代码的输出结果是:

import jsondata = {'name': '艾婉婷', 'age': 18}json_str = json.dumps(data, ensure_ascii=False)print(type(json_str))

① dict

② str

③ list

④ tuple

13、在二进制文件操作中,使用的模式字符是:

① 't'

② 'b'

③ 'x'

④ '+'

14、以下哪个方法用于改变文件指针的位置?

① seek()

② tell()

③ position()

④ locate()

15、处理 CSV 文件时,使用 DictReader 读取数据,每一行数据以什么形式返回?

① 列表

② 元组

③ 字典

④ 字符串

二、多项选择题(本大题共 15 小题)

1、以下哪些是文本文件的常见编码格式?

① UTF-8

② GBK

③ ASCII

④ Binary

2、关于文件打开模式,以下哪些说法是正确的?

① 'r' 模式要求文件必须存在

② 'w' 模式会清空文件原有内容

③ 'a' 模式在文件末尾追加内容

④ 'x' 模式用于打开已存在的文件

3、以下哪些文件对象方法可以用于读取文件内容?

① read()

② readline()

③ readlines()

④ load()

4、使用 csv 模块处理 CSV 文件时,以下哪些说法是正确的?

① writerow() 写入一行数据

② writerows() 写入多行数据

③ reader() 返回一个读取器对象

④ 默认分隔符是逗号

5、关于 JSON 格式,以下哪些说法是正确的?

① JSON 是轻量级的数据交换格式

② JSON 支持注释

③ JSON 键必须是字符串

④ JSON 值可以是数组

6、以下哪些是文件对象的常用方法?

① write()

② close()

③ seek()

④ split()

7、在文件操作中,异常处理需要考虑哪些异常?

① FileNotFoundError

② PermissionError

③ IsADirectoryError

④ ValueError

8、关于 with 语句,以下哪些说法是正确的?

① 自动管理资源

② 避免忘记关闭文件

③ 发生异常时也能正确关闭文件

④ 只能用于文件操作

9、以下哪些是 CSV 文件的特点?

① 纯文本格式

② 每行一条记录

③ 字段间用分隔符分隔

④ 支持复杂的数据结构

10、使用 json 模块时,以下哪些方法可用于 JSON 处理?

① dump()

② dumps()

③ load()

④ loads()

11、关于文件指针,以下哪些说法是正确的?

① tell() 返回当前位置

② seek() 改变指针位置

③ 读取操作会移动指针

④ 写入操作不会移动指针

12、以下哪些是二进制文件的应用场景?

① 图片文件

② 音频文件

③ 视频文件

④ 文本日志

13、在 CSV 文件写入时,设置 newline='' 的作用是:

① 避免在 Windows 中产生空行

② 提高写入速度

③ 统一换行符处理

④ 支持中文编码

14、关于数据维度,以下哪些说法是正确的?

① 一维数据可用列表表示

② 二维数据可用嵌套列表表示

③ CSV 适合存储二维数据

④ JSON 适合存储高维数据

15、以下哪些是良好的文件操作实践?

① 使用 with 语句管理文件

② 指定明确的编码格式

③ 及时关闭文件

④ 对文件操作进行异常处理

三、程序填充题(本大题共 5 小题)

1、以下程序用于统计文本文件中单词的数量。请在下划线处补全代码。

with open("poem.txt", "r", encoding="utf-8") as f: content = f.read() words = content.split() count = ________ print(f"单词数量: {count}")

2、以下程序用于读取 CSV 文件并计算平均成绩。请在下划线处补全代码。

import csv total = 0count = 0with open("scores.csv", "r", encoding="utf-8") as f: reader = csv.reader(f) next(reader) # 跳过标题行 for row in ________: score = int(row[1]) # 假设成绩在第二列 total += score count += 1 average = ________ / count if count > 0 else 0print(f"平均成绩: {average:.2f}")

3、以下程序将 Python 字典保存为 JSON 文件。请在下划线处补全代码。

import json data = { "name": "张三", "age": 20, "courses": ["数学", "英语", "编程"]} with open("student.json", "w", encoding="utf-8") as f: ________(data, f, indent=4, ensure_ascii=False) print("JSON文件保存成功")

4、以下程序实现文件复制功能。请在下划线处补全代码。

def copy_file(source, target): with open(source, "rb") as src: with open(target, ________) as dst: content = src.read() ________ copy_file("source.jpg", "target.jpg")print("文件复制完成")

5、以下程序读取 JSON 配置文件。请在下划线处补全代码。

import json with open("config.json", "r", encoding="utf-8") as f: config = ________ print(f"服务器地址: {config.get('host', 'localhost')}")print(f"端口号: {config.get('port', 8080)}")

四、编程题(本大题共 2 小题)

1、学生成绩管理系统

编写一个学生成绩管理系统,实现以下功能:

(1)添加学生成绩(姓名、成绩)

(2)将成绩保存到 CSV 文件

(3)从 CSV 文件读取并显示所有成绩

(4)计算并显示平均分、最高分、最低分

(5)将统计结果保存到 JSON 文件

要求:

(1)使用函数组织代码

(2)使用异常处理确保文件操作安全

(3)支持中文姓名和成绩

(4)主要变量:students, filename, statistics

2、日志分析器

编写一个日志分析器,分析服务器日志文件:

(1)读取日志文件(包含时间、IP 地址、状态码)

(2)统计每个 IP 地址的访问次数

(3)找出访问最频繁的 IP 地址

(4)统计不同状态码的数量

(5)将分析结果保存到文本文件

要求:

(1)日志格式示例:2026-01-01 10:00:00 192.168.1.1 200

(2)使用字典进行统计

(3)结果按访问次数降序排序

(4)主要变量:log_entries, ip_count, status_count

附:参考答案与解析

“点赞有美意,赞赏是鼓励”

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 12:29:58

Linly-Talker生成视频的人物眨眼频率可调吗?

Linly-Talker 生成视频的人物眨眼频率可调吗? 在当前 AI 数字人技术快速渗透教育、客服、直播等场景的背景下,一个看似微小却直接影响用户体验的问题逐渐浮出水面:虚拟人物会不会“眨眼睛”?眨得自然吗?能不能按需调节…

作者头像 李华
网站建设 2026/4/16 12:51:45

Linly-Talker训练数据来源是否公开?伦理争议回应

Linly-Talker训练数据来源是否公开?伦理争议回应 在虚拟主播、数字员工和AI教师逐渐走入日常生活的今天,一个名为 Linly-Talker 的开源项目悄然走红。它只需一张人脸照片和一段文本或语音输入,就能生成口型同步、表情自然的讲解视频&#xff…

作者头像 李华
网站建设 2026/4/15 20:17:52

宠物商城网站信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】

摘要 随着互联网技术的快速发展,宠物行业逐渐向数字化和智能化转型,宠物商城作为宠物用品及服务的重要线上平台,其高效的信息管理需求日益增长。传统的宠物商城系统在数据整合、用户体验和系统扩展性方面存在诸多不足,难以满足现…

作者头像 李华
网站建设 2026/4/16 13:06:46

Linly-Talker与Stable Diffusion联动生成虚拟形象

Linly-Talker与Stable Diffusion联动生成虚拟形象 在短视频、直播和在线教育爆发式增长的今天,内容创作者和企业面临一个共同挑战:如何以低成本、高效率地生产出具有亲和力和专业感的讲解视频?传统数字人制作依赖3D建模、动作捕捉和后期动画…

作者头像 李华
网站建设 2026/4/15 20:46:40

只需一张照片!Linly-Talker打造专属AI数字人

只需一张照片!Linly-Talker打造专属AI数字人 在短视频当道、虚拟主播频出的今天,你是否想过——只需上传一张自拍,就能让“自己”24小时在线讲课、带货、回答客户问题?这不再是科幻电影桥段,而是Linly-Talker正在实现的…

作者头像 李华
网站建设 2026/4/13 10:57:38

MySQL 5.7覆盖索引的实现方式、替代方案和限制

由于MySQL 5.7 不支持 INCLUDE 语法! 本文我详细解释MySQL 5.7覆盖索引的实现方式、替代方案和限制: 一、MySQL的覆盖索引实现方式 MySQL 5.7的实际语法 -- MySQL 5.7 不支持INCLUDE语法 -- 以下语句会报错: CREATE INDEX idx_orders_cove…

作者头像 李华