Ho una stringa in formato UTF-8 ma non sono sicuro di come convertire questa stringa nel relativo carattere letterale corrispondente. Per esempio io ho la stringa:Converti UTF-8 in stringhe letterali in Python
mia stringa è: 'Entre\xc3\xa9'
Esempio uno:
Questo codice:
u'Entre\xc3\xa9'.encode('latin-1').decode('utf-8')
restituisce il risultato: u'Entre\xe9'
Se dunque io continuo stampando questo:
print u'Entre\xe9'
ottengo il risultato: Entreé
Questo è grande e vicino a quello che mi serve. Il problema è che non riesco a rendere 'Entre \ xc3 \ xa9' una variabile e a passarla attraverso i passaggi in questo momento si rompe. Qualche consiglio per farlo funzionare?
Esempio:
a = 'Entre\xc3\xa9'
b = 'u'+ a.encode('latin-1').decode('utf-8')
c= 'u'+ b
desidero risultato di "c" per essere:
Entreé
Molte grazie! Così ora se entro: b nell'interprete python ottengo: u'Entre \ xe9' Se entro: stampa b ottengo: entrée E 'possibile avere una variabile stringa che tornerà automaticamente Entrée senza usare la dichiarazione di stampa? – Tminer
@ user3804963: Penso che tu stia confondendo la rappresentazione ('u'Entre \ xe9'') con il valore. 'print' mostra il valore (come codificato per il tuo terminale), mentre la tua console python ti mostra la rappresentazione (per il debug). Nessun cambiamento di valore ha avuto luogo. Python ti mostra un valore che può essere copiato e incollato nel codice sorgente senza dover dichiarare una codifica del codice sorgente oltre l'ASCII predefinito, quindi viene mostrata una sequenza di escape ('\ xe9') per il punto di codice Unicode U + 00E9. **E 'normale**. –