In Python 2, convertendo la forma esadecimale di una stringa nel corrispondente unicode era semplice:decodifica Hex stringa in Python 3
comments.decode("hex")
dove 'commenti' la variabile è una parte di una linea in un file (il resto della linea non deve essere convertito , poiché è rappresentato solo in ASCII
Ora in Python 3, tuttavia, questo non funziona (presumo a causa dei byte/stringa vs. stringa/unicode switch Mi sembra che ci dovrebbe essere un one-liner in Python 3 per fare la stessa cosa, piuttosto che leggere l'intera riga come se fosse ries di byte (che non voglio fare) e quindi convertire ogni parte della linea separatamente. Se è possibile, mi piacerebbe leggere l'intera riga come una stringa unicode (perché il resto della riga è in unicode) e convertire solo questa parte da una rappresentazione esadecimale.
A meno che la stringa decodificata * sia * in realtà utf-8, si consiglia di utilizzare invece 'decode ('ascii')'. –
e se fosse nel formato di \ x6b \ x61 \ x6d \ x69 –