私はごく最近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問題を迅速に解決できましたが、この小さな発言が私を悩ませています。