你以二进制模式打开文件:
with open(fname, 'rb') as f:
这意味着从文件读取的所有数据都作为bytes对象而不是作为对象返回str
。然后,你不能在容纳测试中使用字符串:
if 'some-pattern' in tmp: continue
你必须使用一个bytes
对象进行测试tmp:
if b'some-pattern' in tmp: continue
TypeError:在Python3中写入文件时需要一个类似字节的对象,而不是'str'
你以二进制模式打开文件:
with open(fname, 'rb') as f:
这意味着从文件读取的所有数据都作为bytes对象而不是作为对象返回str
。然后,你不能在容纳测试中使用字符串:
if 'some-pattern' in tmp: continue
你必须使用一个bytes
对象进行测试tmp:
if b'some-pattern' in tmp: continue