我最近已经迁移到Py 3.5。这段代码在Python 2.7中正常工作:
with open(fname, 'rb') as f:
lines = [x.strip() for x in f.readlines()]
for line in lines:
tmp = line.strip().lower()
if 'some-pattern' in tmp: continue
# ... code
升级到3.5后,我得到了:
TypeError: a bytes-like object is required, not 'str'
最后一行错误(模式搜索代码)。
我试过使用.decode()
语句两侧的函数,也尝试过:
if tmp.find('some-pattern') != -1: continue
-无济于事。
我能够很快解决几乎所有的2:3问题,但是这个小小的声明困扰着我。