二进制文件的处理流程和文本文件流程一致。首先还是要创建文件对象。

    1. f = open(r"d:\a.txt", 'wb') # 可写的、重写模式的二进制文件对象
    2. f = open(r"d:\a.txt", 'ab') # 可写的、追加模式的二进制文件对象
    3. f = open(r"d:\a.txt", 'rb') # 可读的二进制文件对象

    创建好二进制文件对象后,仍然使用write()read()实现文件的读写操作。
    【操作】读取图片文件,实现文件的拷贝

    1. with open('aa.gif', 'rb') as f: # 第一个是读取源文件,rb
    2. with open('aa_copy.gif', 'wb') as w: # 第二个是写目标文件,wb
    3. for line in f.readlines(): # 依旧是通过readlines,逐行地读f的数据,然后写入w
    4. w.write(line) # 注意指定的是w.write
    5. print('图片拷贝完成!')

    文本文件对象和二进制文件对象的创建:
    如果我们没有二进制模式“b”,则默认创建的是文本文件对象,处理的基本单元是“字符”。
    如果是二进制模式“b”,则创建的是二进制文件对象,处理的基本单元是“字节”。

    补充资料:
    二进制文件读写 - 图1