第143课时: 二进制文件的读写 图片文件拷贝
二进制文件的读取和写入:
二进制文件的处理流程和文本文件流程一致。首先还是要创建文件对象,不过,我们需要指定二进制模式,从而创建出二进制文件对象。例如:
f = open(r"d:\a.txt", 'wb')
#可写的、重写模式的二进制文件对象 w代表写 b表示二进制
f = open(r"d:\a.txt", 'ab')
#可写的、追加模式的二进制文件对象 a 表示append
f = open(r"d:\a.txt", 'rb')
#可读的二进制文件对象
创建好二进制文件对象后,仍然可以使用write()、read()实现文件的读写操作
图片用记事本打开是一堆乱码。
测试:复制图片。创建新文件:
with open(r"haha.jpg","rb") as f:
with open('a_copy.jpg','wb') as w:
for line in f.readlines():
w.write(line)
print('ok')
可以看到创建了一个新文件。
Line in f.readlines()
f.readlines()是一个可迭代对象,类似于range(5)一样。
迭代完毕,循环也完毕。
举一反三,只打印部分图片。
a=0
with open(r"haha.jpg","rb") as f:
with open('a_copy.jpg','wb') as w:
for line in f.readlines():
w.write(line)
a=a+1
if a>100:
break
print('ok')
只打印前100行像素的图像。