鱼C论坛

 找回密码
 立即注册
楼主: 小甲鱼

[课后作业] 第053讲:永久存储(上)| 课后测试题及答案

  [复制链接]
发表于 2023-12-30 22:28:20 | 显示全部楼层
完成
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-12-31 07:16:11 | 显示全部楼层
0.如果尝试使用 open() 函数打开一个不存在的文件,是会报错的
1.可以通过使用文件对象的 flush() 方法来实现
2.表示读取 3 个字符
3.1行字符
4.由于 writelines() 方法在处理字符串列表时,不会自动在每个字符串之间添加换行符或其他分隔符。因此,当您写入两行文本时,它们实际上是连续写入的,中间只有一个换行符。

然而,当您使用 for 循环读取文件并打印每一行时,每一行末尾的换行符也被读取并打印出来了。所以,在两行文本之间出现了一个额外的空白行。
5.是因为open函数里的路径的反斜杠“\”没有被正确转译,应该在整个字符串的引号前加r.
6.使用“w”模式打开文件之前要注意原文件原有的内容会被清空。
7.如果一个文件不存在,可以使用 "a" 模式将其打开
8.文件指针是一个内部变量,用于跟踪在文件中读取或写入的位置。它可以帮助你有效地在文件中导航,读取和写入数据。
9.EOF是End of file的缩写
10.用tell()方法
动动手:
0.
with open(r'D:\temp\FishC.txt', 'r') as file:
        content = file.read()
        characters = content[9:15]
g = open(r'D:\temp\FishD.txt', 'w')
g.write(characters)
g.close()
1.
f = open(r"D:\temp\FishC.txt","r+")
f.truncate(15)
f.close()
2.
f = open(r"D:\temp\open_myself.py")
for i in f:
    print(i)
最后一题不会
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-12-31 16:55:26 | 显示全部楼层
2023.12.31
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-12-31 22:40:34 | 显示全部楼层
宝贵的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-1-2 10:31:24 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-1-2 21:55:26 | 显示全部楼层
支持
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-1-3 16:22:40 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-1-6 00:02:09 | 显示全部楼层
0.会

1.使用f.flush()

2.表示读取3个字符

3.一行

4.文件对象的末尾有EOF字符

5.无法使用这个位置

6.如果文件已存在会把之前的数据清空

7.可以

8.确定文件字符的位置

9.文件对象的末尾

10. f.tell()


0.
f = open("FishC.txt", "r")
d = open("FishD.txt", "w")
f.seek(9)
t = f.read(6)
d.write(t)
f.close()
d.close()

1.
f = open("FishC.txt", "r+")
f.truncate(15)
f.close

2.
z = open("target.zip", "rb")
p = open("test.jpg", "a+b")
b = z.read()
p.write(b)
z.close()
p.close()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-1-6 12:32:53 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-1-7 14:58:57 | 显示全部楼层
看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-1-9 15:49:09 | 显示全部楼层
0. 不会报错,会创建一个新的文件
1. f.flush()
2. 读取三个字符
3. 一行
4. 因为执行了两次打印操作,每次打印操作会默认生成一个换行
5. 因为路径中的\被当成转义字符了
6. 要注意文件内容已经保存过了
7. 可以
8. 很多文件方法需要指针来提供开始或者结束
9. end of the file,文件末尾
10. f.tell()


0.
f = open("FishC.txt", "r+")
f.truncate(15)
f.seek(10)
s = f.read()
f.close()

f = open("FishD.txt", "w")
f.write(s)
f.close()


1.
f = open("FishC.txt", "r+")
f.truncate(15)
s = f.read()
f.close()
f = open("FishC.txt", "w")
f.write(s)
f.close()


2.
f = open("open_myself.py", "r")
for each in f:
    print(each)
f.close()


3.
f = open("test.jpg", "r+")
f2 = open("被隐藏的文件.txt", "r+")
s = f2.read()
f.write(s)
f.close()
f2.close()

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-1-9 20:45:22 | 显示全部楼层
写入出错了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-1-11 10:22:07 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-1-11 11:07:03 | 显示全部楼层
查看解析
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-1-11 23:09:18 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-1-16 17:20:37 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-1-16 20:19:26 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-1-17 16:47:47 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-1-19 13:51:49 | 显示全部楼层
0.如果是只读模式 会报错
1.用flush()
2.只读前三个字符
3.一行
4.为什么呢
5.路径不对
6.会清空文件原来内容
7.可以  创建
8.写入  读取开始位子
9.EOF是文件结束符
10.tell
0
f=open("FishC.txt",'r+')
f.truncate(15)
15
f.close()
1.
f=open("open_myself.py",'r')
for ench in f:
    print(ench)
2.
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-1-22 11:03:20 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-2-12 16:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表