TypeError: se requiere un objeto similar a bytes, no 'str' cuando se escribe en un archivo en Python3
Recientemente migré a Py 3.5. Este código funcionaba correctamente en 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
Después de actualizar a 3.5, obtengo el:
TypeError: a bytes-like object is required, not 'str'
error en la última línea (el código de búsqueda del patrón).
He intentado usar el.decode()
función en cualquier lado de la declaración, también intentó:
if tmp.find('some-pattern') != -1: continue
- en vano.
Pude resolver casi todos los problemas 2: 3 rápidamente, pero esta pequeña declaración me está molestando.