Di recente sono migrato su Py 3.5. Questo codice funzionava correttamente in 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
Dopo l'aggiornamento a 3.5, sto ottenendo il:
TypeError: a bytes-like object is required, not 'str'
errore sull'ultima riga (il codice di ricerca del modello).
Ho provato a usare la .decode()
funzione su entrambi i lati della frase, ho anche provato:
if tmp.find('some-pattern') != -1: continue
- inutilmente.
Sono stato in grado di risolvere rapidamente quasi tutti i problemi 2: 3, ma questa piccola affermazione mi sta infastidendo.
result = requests.get
e cerco di farlo x = result.content.split("\n")
. Sono un po 'confuso dal messaggio di errore perché sembra implicare che result.content
è una stringa e .split()
richiede un oggetto simile a byte .. ?? ("è richiesto un oggetto simile a byte, non 'str"') ..