【MK】Python全栈 阶段一:习题汇总 八:文件操作

本文是关于Python全栈学习的第一阶段习题汇总,主要涵盖文件操作和序列化的知识点。内容包括单选题和多选题,涉及文件的创建、写入、读操作,以及json、pickle和yaml等序列化方法。提供了编程练习和相关代码示例,如Test.yaml和06_yaml.py。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

版权声明:本文为博主原创文章,未经博主允许不得转载。



一、单选题

1.以追加模式打开一个文件,若文件不存在则创建用于读写的该文件,应使用下列哪种访问模式( C

  • A .w+ 【打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。】
  • B .ab 【以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入】
  • C .a+ 【打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。【读写模式的追加】】
  • D .r+ 【打开一个文件用于读写。文件指针将会放在文件的开头。】

2.关于 yaml 文件下列选项中描述错误的是( D

  • A .yaml文件在读取后得到的是字典类型的数据
  • B .yaml文件也属于文本类型的文件
  • C .yaml文件经常用于一些定义好不常修改的内容,如服务配置文件
  • D .yaml文件使用load()读取文件后返回的是字符串类型的数据 【字典类型的数据】

二、多选题

1.下列关于文件打开时的访问模式,写法错误的是( A D

  • A .+ 【×】
  • B .a+
  • C .rb+
  • D .wa+ 【×】

三、练习题

3.1 文件的创建与写入

import os

# 获取当前路径
current_path = os.getcwd()
print(current_path)

# 创建文件, 写入内容
f = open(current_path + '/' + 'Test_01.txt', 'w')
f.write('Hello 小慕')
f.close()

# 写入模式:w     之前写入的内容被删除
path = os.path.join(current_path, 'Test_01.txt')
f = open(path, 'w')
f.write('你好,小慕')
f.close()

# 写入模式:w+   之前的内容被删除
f = open(path, 'w+')
f.write('你好 dewei')
f.close()

# 写入模式:w   不可以读取
f = open(path, 'w')
f.write('welcome IMOOC')
f.close()

# 写入模式:w+   可以读取
f = open(path, 'w+')
f.write('I will to 51CTO')
print(f.read())   # 写完之后,读取文件的最后一个字符 ''
print(f.seek(0))
print(f.read())   # 这回都读取出来了

# ab模式:可以写入,不可以读取  追加内容
f = open(path, 'ab')
message = 'Python很有意思'   # 转成比特类型
_message = message.encode('utf-8')
f.write(_message)
f.close()

# a+模式: 未换行    追加内容
f = open(path, 'a+')
f.write('1\n')
f.write('2\n')
f.close()

# a 模式:  追加内容
l = ['今天天气很好\n', '适合学Python\n', 'Python是非常简单的编程语言\n']
f = open(path, 'a')
f.writelines(l)
f.close()

3.2 文件的创建与写入:open函数

import os

def create_package(path):
    if os.path.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

InitialHeart2021

你的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值