鱼C论坛

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

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

  [复制链接]
发表于 2024-5-13 18:51:28 | 显示全部楼层
请回复您的答案^_^

-------- 问答题 --------

第 0 题的答案是:

第 1 题的答案是:

第 2 题的答案是:

第 3 题的答案是:

第 4 题的答案是:

第 5 题的答案是:

第 6 题的答案是:

第 7 题的答案是:

第 8 题的答案是:

第 9 题的答案是:

第 10 题的答案是:

-------- 动动手 --------

请将第 0 题的代码写在下方:



请将第 1 题的代码写在下方:



请将第 2 题的代码写在下方:



请将第 3 题的代码写在下方:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

匿名鱼油
匿名鱼油  发表于 2024-5-13 21:05:05
1
1243657、811118888888181818请回复您的答案^_^
345678、
-------- 问答题 --------

第 0 题的答案是:不会,会新创建一个文件

第 1 题的答案是:写一个flush函数

第 2 题的答案是:表示读取三个字符串

第 3 题的答案是:一行

第 4 题的答案是:因为wirtelines的时候不会自动添加换行符,所以我们自己加了一个换行符,但是for循环会自动添加一个换行符

第 5 题的答案是:

第 6 题的答案是:使用后会覆盖之前存在过的该文件,注意数据的消失

第 7 题的答案是:可以,会直接新建一个文件

第 8 题的答案是:指向输出的顺序

第 9 题的答案是:

第 10 题的答案是:用tell()函数

-------- 动动手 --------

请将第 0 题的代码写在下方:
a =list("FishAFishBFishCFishDFishE")
b =[]
for each in range((len(a))):
    if 9<=each<=14:
        b.append(f"{a[each]}")
q = "".join(str(n)for n in b)
print(q)
f = open("FishD.txt","w+")
f.write(str(b))
f.close()
f = open("FishD.txt","r+")
f.read()



请将第 1 题的代码写在下方:



请将第 2 题的代码写在下方:



请将第 3 题的代码写在下方:
回复 支持 反对

使用道具 举报

发表于 2024-5-13 21:05:42 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-5-16 15:11:39 | 显示全部楼层
请回复您的答案^_^

-------- 问答题 --------

第 0 题的答案是:
会报错
第 1 题的答案是:
flush
第 2 题的答案是:
读取改行的3个单位字符
第 3 题的答案是:
一行
第 4 题的答案是:

第 5 题的答案是:

第 6 题的答案是:
注意文件有备份,或者文件内容为空
第 7 题的答案是:
不能
第 8 题的答案是:
截取
第 9 题的答案是:
处在文本最后,表示此字符资料结束
第 10 题的答案是:
tell
-------- 动动手 --------

请将第 0 题的代码写在下方:



请将第 1 题的代码写在下方:



请将第 2 题的代码写在下方:



请将第 3 题的代码写在下方:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-19 18:51:54 | 显示全部楼层
请回复您的答案^_^

-------- 问答题 --------

第 0 题的答案是:

第 1 题的答案是:

第 2 题的答案是:

第 3 题的答案是:

第 4 题的答案是:

第 5 题的答案是:

第 6 题的答案是:

第 7 题的答案是:

第 8 题的答案是:

第 9 题的答案是:

第 10 题的答案是:

-------- 动动手 --------

请将第 0 题的代码写在下方:



请将第 1 题的代码写在下方:



请将第 2 题的代码写在下方:



请将第 3 题的代码写在下方:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-20 22:22:03 | 显示全部楼层
请回复您的答案^_^

-------- 问答题 --------

第 0 题的答案是:

第 1 题的答案是:

第 2 题的答案是:

第 3 题的答案是:

第 4 题的答案是:

第 5 题的答案是:

第 6 题的答案是:

第 7 题的答案是:

第 8 题的答案是:

第 9 题的答案是:

第 10 题的答案是:

-------- 动动手 --------

请将第 0 题的代码写在下方:



请将第 1 题的代码写在下方:



请将第 2 题的代码写在下方:



请将第 3 题的代码写在下方:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-21 11:17:32 | 显示全部楼层
请回复您的答案^_^

-------- 问答题 --------

第 0 题的答案是:
不会,会创建新的文件

第 1 题的答案是:
flush()

第 2 题的答案是:
获取前三位字符

第 3 题的答案是:
一行字符串

第 4 题的答案是:
for会把换行符打印出来

第 5 题的答案是:
地址不需要包含系统里的路径

第 6 题的答案是:
注意备份

第 7 题的答案是:
可以,也会创建一个新的文件

第 8 题的答案是:
指向当前的字符位置,方便打印

第 9 题的答案是:


第 10 题的答案是:
用tell()

-------- 动动手 --------

请将第 0 题的代码写在下方:
f.seek(10)
                                                         
10
a = f.read(5)
                                                         
a
                                                         
'FishC'
x = open('FishD.txt', 'r+')
x.write(a)                                                        
5
x.flush()


请将第 1 题的代码写在下方:
f.seek(0)
                                                         
0
a = f.read(15)
                                                         
a
                                                         
'FishAFishBFishC'
x = open('FishC.txt', 'w')
                                                         
x.write(a)
                                                         
15
x.flush()
                                                         
x.close()



请将第 2 题的代码写在下方:



请将第 3 题的代码写在下方:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-22 14:10:59 | 显示全部楼层
本帖最后由 FishLiu 于 2024-5-22 14:37 编辑

请回复您的答案^_^

-------- 问答题 --------

第 0 题的答案是:w不会报错,r会报错

第 1 题的答案是:.flush方法

第 2 题的答案是:可读取的字节数

第 3 题的答案是:1行

第 4 题的答案是:

第 5 题的答案是:路径中存在转义字符。

第 6 题的答案是:会将源文件覆盖

第 7 题的答案是:不能,会报错

第 8 题的答案是:可以通过调整光标位置,在不同位置读取、截取、插入等

第 9 题的答案是:End of File

第 10 题的答案是:f.tell()

-------- 动动手 --------

请将第 0 题的代码写在下方:

f1 = open("FishC.txt", 'r')
f2 = open("FishD.txt", 'w')
f1.seek(10)
f2.write(f1.read(5))
f1.close()
f2.close()

请将第 1 题的代码写在下方:

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


请将第 2 题的代码写在下方:



请将第 3 题的代码写在下方:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-26 15:09:30 | 显示全部楼层
请回复您的答案^_^

-------- 问答题 --------

第 0 题的答案是:会

第 1 题的答案是:使用flush()方法

第 2 题的答案是:读取三个字符

第 3 题的答案是:一行

第 4 题的答案是:

第 5 题的答案是:路径中反斜杠没有用反斜杠转义或者前面加r

第 6 题的答案是:会清空文件内容

第 7 题的答案是:不可以

第 8 题的答案是:指示文件阅读位置,类似一个书签

第 9 题的答案是:

第 10 题的答案是:tell()方法

-------- 动动手 --------

请将第 0 题的代码写在下方:
a=open(r'D:\HuaweiMoveData\Users\daxiong\Desktop\FishC.txt')
a.seek(10,0)
10
b=open(r'D:\HuaweiMoveData\Users\daxiong\Desktop\FishD.txt','x')
b.write(a.read(5))
5
b.close()
请将第 1 题的代码写在下方:
a=open(r'D:\HuaweiMoveData\Users\daxiong\Desktop\FishC.txt','r+')
a.truncate(15)
15
a.close()
请将第 2 题的代码写在下方:
def open_myself():
     a=open(r'D:\HuaweiMoveData\Users\daxiong\Desktop\FishC.txt','r+')
     print(a.read())
     return
请将第 3 题的代码写在下方:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-29 14:21:31 | 显示全部楼层
请回复您的答案^_^

-------- 问答题 --------

第 0 题的答案是:不会

第 1 题的答案是:f.flush()

第 2 题的答案是:限制读取的字符数

第 3 题的答案是:一行

第 4 题的答案是:

第 5 题的答案是:转义字符  f = open(r"C:\Users\goodb\Desktop\FishC.txt", "w")

第 6 题的答案是:

第 7 题的答案是:

第 8 题的答案是:

第 9 题的答案是:

第 10 题的答案是:tell()

-------- 动动手 --------

请将第 0 题的代码写在下方:



请将第 1 题的代码写在下方:

f.truncate(15)

请将第 2 题的代码写在下方:



请将第 3 题的代码写在下方:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-30 15:18:48 | 显示全部楼层
# 0. 如果尝试使用 open() 函数打开一个不存在的文件,是否会报错?
# 视情况而定

# 1. “在打开一个文件对象之后,大多数的文件操作都是在缓冲区里面进行的。
# 因此,如果希望将文件内容保存,我们需要使用 close() 方法关闭文件对象,
# 这样数据才能从缓冲区写入到文件中。”,那么请问大家,有没有办法在不关闭文件对象的情况下,
# 进行内容的保存呢?

# flush()函数

# 2. 请问如果指定 readline(size=-1) 方法的 size 参数为 3,那么表示的含义是什么?
# readline()方法会从文件中读取最多3个字符。
# 如果在读取3个字符之前遇到了换行符,它会停止读取并返回已经读取的内容。
# 如果在读取3个字符之前没有遇到换行符,它会返回3个字符,即使这不一定是一个完整的行。

# 3. 请问下面代码会在文件中写入几行字符串呢?
f = open("FishC.txt", "w")
f.writelines(["FishA", "FishB", "FishC"])
f.close()

# f.writelines不会在结尾处补充换行符,所以是一行

# 4. 请问在课堂中的代码,为什么我们写入的时候只有一个换行符,
# 但是使用 for 语句读取并打印出来却多了一个空白行呢?
f = open("FishC.txt", "w")
f.writelines(["I love FishC.\n", "I love my wife."])
f.close()
f = open("FishC.txt", "r")
for each in f:
    print(each)

# I love FishC.

# I love my wife.

# print功能会额外添加一个换行符

# 5. 请问下面代码为什么会报错?
# f = open("C:\Users\goodb\Desktop\FishC.txt", "w")
# SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape
# 在这个字符串中,\U 被解释为转义序列的开始,
# 但是后面没有跟随足够的字符来形成一个有效的Unicode转义序列,
# 所以Python会抛出一个 SyntaxError。

# 6. 使用 "w" 模式打开文件之前一定要注意什么?
# 文件覆盖:如果文件已经存在,使用 "w" 模式打开文件将会清空原有内容。如果你想保留原有内容并在末尾追加新内容,应该使用 "a"(追加)模式。
# 文件创建:如果文件不存在,使用 "w" 模式将会创建一个新文件。
# 权限问题:确保你有足够的权限来写入指定的文件。在某些操作系统或文件系统中,你可能需要管理员权限或者相应的读写权限。
# 路径正确性:确保提供的文件路径是正确的。如果路径错误,Python 将无法找到文件,可能会导致错误。
# 异常处理:文件操作可能会遇到各种异常,例如 IOError(输入/输出错误),因此应该使用 try-except 块来处理可能出现的异常。
# 关闭文件:在写入文件后,应该使用 close() 方法关闭文件,或者使用 with 语句来自动关闭文件。这有助于释放系统资源,并确保数据正确写入磁盘。

# 7. 如果一个文件不存在,是否可以使用 "a" 模式将其打开?
# 是的,如果文件不存在,使用 "a"(追加)模式打开文件时,Python 会创建一个新的文件。这样,您就可以立即开始向文件中追加内容。

# 8. 文件指针的作用是什么?
# 读写定位:在进行读写操作时,文件指针指示下一次读写操作将在文件的哪个位置进行。例如,如果你读取了一些数据,
# 文件指针会移动到已读取数据的末尾,以便下一次读取操作从新的位置开始。

# 顺序访问:在默认情况下,文件是以顺序访问模式操作的,这意味着文件指针按照从前往后的顺序移动。
# 你可以读取文件的前几个字节或写一些数据,然后文件指针会相应地向前移动。

# 随机访问:虽然默认是顺序访问,但许多文件类型(如普通文件)也支持随机访问,这意味着你可以显式地移动文件指针到文件的任意位置。
# 在Python中,这可以通过 seek() 方法实现。

# 文件状态:文件指针的位置也可以用来获取文件的状态信息,比如当前读写位置或文件是否已到达末尾。


# 9. 什么是 EOF?
# EOF 是 “End of File” 的缩写,表示文件的末尾。
# 当读取文件时,如果你已经到达了文件的末尾,继续尝试读取将会遇到 EOF。
# 在大多数编程语言中,遇到 EOF 会被视为一个条件或异常,用来通知程序不再有更多的数据可以读取。

# 10. 如何知道文件指针当前指定的位置?
# 在Python中,要确定文件指针当前的指定位置,可以使用文件对象的 tell() 方法。
# 这个方法会返回一个整数,表示文件指针距离文件开头的字节数。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-30 22:33:06 | 显示全部楼层
请回复您的答案^_^

-------- 问答题 --------

第 0 题的答案是:f=open("FishC.txt","w")
文件存在则清空打开,要重写;文件不存在则新建,开始写

第 1 题的答案是:f.flush() 缓存数据写入文件

第 2 题的答案是:在指针所在的行读取3个字符

第 3 题的答案是: 一行,需要人为添加换行符才行

第 4 题的答案是:  因为有换行符

第 5 题的答案是: 只有单个"\",容易被识别成转义字符。解决方式要么是使用原始字符串 r" ",要么是用两个"\"

第 6 题的答案是: 已有的内容会被清除重写

第 7 题的答案是: 不行吧,a是追加到末尾,可以使用w

第 8 题的答案是: 确定读取的位置

第 9 题的答案是:

第 10 题的答案是:f.tell()

-------- 动动手 --------

请将第 0 题的代码写在下方:



请将第 1 题的代码写在下方:



请将第 2 题的代码写在下方:



请将第 3 题的代码写在下方:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-31 04:16:43 | 显示全部楼层
本帖最后由 sin0824 于 2024-5-31 04:26 编辑

请回复您的答案^_^

-------- 问答题 --------

第 0 题的答案是:看以什么模式打开   “w”  "a"不会报错,有则打开,无则创建   "r"则会报错

第 1 题的答案是:用 flush()   或 with open() ad f:  后写入

第 2 题的答案是:3个字符

第 3 题的答案是:一行

第 4 题的答案是:指针  ->   到   \n  换行符  时 独立一行打印  若不需要空格一行  则可以  end = ""

第 5 题的答案是:没有此用户目录下的文件夹

第 6 题的答案是:你是否确定 以 'w'  打开的文件 原来的内容全都不需要了。因为以“w” open文件  会先清空文件里的全部内容

第 7 题的答案是:可以,没有则会创建

第 8 题的答案是:指目前文件读取或写入在什么位置

第 9 题的答案是:End Of the File

第 10 题的答案是:f.tell()

-------- 动动手 --------

请将第 0 题的代码写在下方:



请将第 1 题的代码写在下方:



请将第 2 题的代码写在下方:



请将第 3 题的代码写在下方:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-31 15:42:50 | 显示全部楼层
请回复您的答案^_^

-------- 问答题 --------

第 0 题的答案是:

第 1 题的答案是:

第 2 题的答案是:

第 3 题的答案是:

第 4 题的答案是:

第 5 题的答案是:

第 6 题的答案是:

第 7 题的答案是:

第 8 题的答案是:

第 9 题的答案是:

第 10 题的答案是:

-------- 动动手 --------

请将第 0 题的代码写在下方:



请将第 1 题的代码写在下方:



请将第 2 题的代码写在下方:



请将第 3 题的代码写在下方:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-6-2 23:20:26 | 显示全部楼层
请回复您的答案^_^

-------- 问答题 --------

第 0 题的答案是:
不会,会创建一个新的文件
第 1 题的答案是:
flush()
第 2 题的答案是:
读取文件中的3个字符
第 3 题的答案是:
1行,没有转义符
第 4 题的答案是:
依次输出文档中的数据,换行符作为一个单独的行输出了
第 5 题的答案是:
\在python中被理解为转义
第 6 题的答案是:
注意保存原本的文件内容,避免覆盖
第 7 题的答案是:
可以
第 8 题的答案是:
指明读取的文件位置
第 9 题的答案是:
end of file,文件最后的字符
第 10 题的答案是:
f.tell()
-------- 动动手 --------

请将第 0 题的代码写在下方:
f = open("C:\\Users\\ThinkPad\\Downloads\FishC.txt","r")
f.seek(10)
content = f.read(5)
new = open("C:\\Users\\ThinkPad\\Downloads\FishD.txt","w")
new.write(content)
f.close()
new.close()
请将第 1 题的代码写在下方:
f = open("C:\\Users\\ThinkPad\\Downloads\FishC.txt","r+")
f.truncate(15)
f.close()

请将第 2 题的代码写在下方:
f = open("D:\\Program Files (x86)\\Python\open_myself.py", "r")
code = f.read()
print(code)



请将第 3 题的代码写在下方:
figure = open(r"D:\Program Files (x86)\Python\test.jpg", "a")
target = open(r"D:\Program Files (x86)\Python\target.zip", "r")
content = target.read()
figure.write(content)
figure.close()
target.close()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-6-3 16:44:07 | 显示全部楼层
请回复您的答案^_^

-------- 问答题 --------

第 0 题的答案是:

第 1 题的答案是:

第 2 题的答案是:

第 3 题的答案是:

第 4 题的答案是:

第 5 题的答案是:

第 6 题的答案是:

第 7 题的答案是:

第 8 题的答案是:

第 9 题的答案是:

第 10 题的答案是:

-------- 动动手 --------

请将第 0 题的代码写在下方:



请将第 1 题的代码写在下方:



请将第 2 题的代码写在下方:



请将第 3 题的代码写在下方:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-6-4 13:46:12 | 显示全部楼层
请回复您的答案^_^

-------- 问答题 --------

第 0 题的答案是:

第 1 题的答案是:

第 2 题的答案是:

第 3 题的答案是:

第 4 题的答案是:

第 5 题的答案是:

第 6 题的答案是:

第 7 题的答案是:

第 8 题的答案是:

第 9 题的答案是:

第 10 题的答案是:

-------- 动动手 --------

请将第 0 题的代码写在下方:



请将第 1 题的代码写在下方:



请将第 2 题的代码写在下方:



请将第 3 题的代码写在下方:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-6-5 07:17:37 | 显示全部楼层
请回复您的答案^_^

-------- 问答题 --------

第 0 题的答案是:0

第 1 题的答案是:

第 2 题的答案是:

第 3 题的答案是:

第 4 题的答案是:

第 5 题的答案是:

第 6 题的答案是:

第 7 题的答案是:

第 8 题的答案是:

第 9 题的答案是:

第 10 题的答案是:

-------- 动动手 --------

请将第 0 题的代码写在下方:



请将第 1 题的代码写在下方:



请将第 2 题的代码写在下方:



请将第 3 题的代码写在下方:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-6-5 19:57:08 | 显示全部楼层
请回复您的答案^_^

-------- 问答题 --------

第 0 题的答案是:

第 1 题的答案是:

第 2 题的答案是:

第 3 题的答案是:

第 4 题的答案是:

第 5 题的答案是:

第 6 题的答案是:

第 7 题的答案是:

第 8 题的答案是:

第 9 题的答案是:

第 10 题的答案是:

-------- 动动手 --------

请将第 0 题的代码写在下方:



请将第 1 题的代码写在下方:



请将第 2 题的代码写在下方:



请将第 3 题的代码写在下方:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-6-6 13:22:43 | 显示全部楼层
请回复您的答案^_^

-------- 问答题 --------

第 0 题的答案是:

第 1 题的答案是:

第 2 题的答案是:

第 3 题的答案是:

第 4 题的答案是:

第 5 题的答案是:

第 6 题的答案是:

第 7 题的答案是:

第 8 题的答案是:

第 9 题的答案是:

第 10 题的答案是:

-------- 动动手 --------

请将第 0 题的代码写在下方:



请将第 1 题的代码写在下方:



请将第 2 题的代码写在下方:



请将第 3 题的代码写在下方:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-2-12 14:51

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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