Ho un problema con l'iterazione di stringhe Unicode, carattere per carattere, con python.Iterazione attraverso una stringa unicode in Python
print "w: ",word
for c in word:
print "word: ",c
Questa è la mia uscita
w: 文本
word: ?
word: ?
word: ?
word: ?
word: ?
word: ?
mio output desiderato è:
文
本
Quando uso len (parola) ottengo 6. A quanto pare ogni carattere è 3 pezzi unicode.
Quindi, la mia stringa unicode è memorizzata correttamente nella variabile, ma non riesco a estrarre i caratteri. Ho provato ad usare encode ('utf-8'), decodificare ('utf-8) e codec ma non riesco ancora ad ottenere buoni risultati. Questo sembra un problema semplice ma è frustrantemente difficile per me.
Spero che qualcuno possa indicarmi la giusta direzione.
Grazie!
Grazie per il tuo commento! Comunque sto ancora ricevendo un errore "il codec 'ascii' non può codificare il carattere u '\ u5f02' in posizione 0: ordinale non nel range (128)". Potrebbe essere che il mio file non venga letto come unicode al primo posto? Sto usando questa riga di codice per leggere il file: fileContent = codecs.open ('fileName.txt,' UTF-8 '). Read() – charpi
@charpi quale errore? –
modificato :) Grazie – charpi