|
发表于 2019-11-15 15:44:47
|
显示全部楼层
测试题:
0. 下边只有一种方式不能打开文件,请问是哪一种,为什么?
1. >>> f = open('E:/test.txt', 'w') # A
2. >>> f = open('E:\test.txt', 'w') # B
3. >>> f = open('E://test.txt', 'w') # C
4. >>> f = open('E:\\test.txt', 'w') # D
5.
复制代码
第二种,因为\相当于转义符
1. 打开一个文件我们使用open()函数,通过设置文件的打开模式,决定打开的文件具有那些性质,请问默认的打开模式是什么呢?
只读的文本文件
2. 请问 >>> open('E:\\Test.bin', 'xb') 是以什么样的模式打开文件的?
以二进制创建并打开一个新的文件Test.bin,如果文件已经存在了,则报错
3. 尽管Python有所谓的“垃圾回收机制”,但对于打开了的文件,在不需要用到的时候我们仍然需要使用f.close()将文件对象“关闭”,这是为什么呢?
因为python会将输入的内容暂存在缓存cache里,如果突然断电,则输入内容没有保存
4. 如何将一个文件对象(f)中的数据存放进列表中?
list1=list(f)
5. 如何迭代打印出文件对象(f)中的每一行数据?
for lines in f:
print(lines)
6. 文件对象的内置方法f.read([size=-1])作用是读取文件对象内容,size参数是可选的,那如果设置了size=10,例如f.read(10),将返回什么内容呢?
返回是个字符的内容
7. 如何获得文件对象(f)当前文件指针的位置?
f.tell()
8. 还是视频中的那个演示文件(record.txt),请问为何f.seek(45, 0)不会出错,但f.seek(46)就出错了呢?
1. >>> f.seek(46)
2. 46
3. >>> f.readline()
4. Traceback (most recent call last):
5. File "<pyshell#18>", line 1, in <module>
6. f.readline()
7. UnicodeDecodeError: 'gbk' codec can't decode byte 0xe3 in position 4: illegal multibyte sequence
8.
复制代码
不懂
动动手:
0. 尝试将文件( OpenMe.mp3 (700 Bytes, 下载次数: 10654) )打印到屏幕上
1. 编写代码,将上一题中的文件(OpenMe.mp3)保存为新文件(OpenMe.txt)
|
|