2016-10-12 4 views
0

Ich habe Listen mit Unicode:konvertieren Unicode in kyrillisch

words 
[u'\xd1', u'\xd0\xb0', u'\xd0\xb8', u'\u043e', u'\xd1\x81', u'-', u'\xd0\xb2', u'\u0438', u'\u0441', u'\xd0\xb8\xd1', u'\xd1\x83', u'\u0432', u'\u043a', u'\xd0\xba', u'\xd0\xbf\xd0\xbe', u'|', u'search', u'\xd0\xbd\xd0\xbe', u'25', u'in', u'\xd0\xbd\xd0\xb0', u'\u043d\u0430', u'\xd0\xbd\xd0\xb5', u'\xd0\xbe\xd0\xb1', u'\xd0\xbe\xd1\x82', u'\u043f\u043e', u'google', u'\xd0\x92', u'---', u'##'] 
[u'\u043e', u'\u0438', u'-', u'\u0441', u'\u0432', u'\u043a', u'\u0430', u'ebay', u'\u043d\u0430', u'\u0443', u'\u0442\u043e', u'"', u'33', u'**', u'ebay.', u'\u043f\u043e', u'jeans', u'at', u'\u0442\u043e\u0432\u0430\u0440', u'\u0434\u0436\u0438\u043d\u0441\u044b', u'\u0442\u043e\u0432\u0430\u0440\u043e\u0432', u'\u041a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f', u'\u043d\u0430\u0437\u0432\u0430\u043d\u0430', u'\u043e\u0442', u'tan', u'\u0432\u044b', u'altanbataev0', u'32', u'\u043d\u043e', u'&'] 
[u'\u043e', u'/', u'\u0430', u'-', u'\u0438', u'\u0441', u'\u0432', u'\u043a', u'\u0443', u'\u044f', u'\u043d\u043e', u'\u043f\u043e', u'\u0442\u043e', u'\u043d\u0430', u'\u043e\u0442', u'!', u'\u043d\u0435', u'"', u'\u043d\u0438', u'\u043a\u043e', u'\u0442\u0435\u0441\u0442', u'\u0437\u0430', u'\u043e\u043d'] 

versuchte ich [x.encode('latin-1') for x in lst] aber es gibt:

UnicodeEncodeError: 'latin-1' codec can't encode character u'\u043e' in position 0: ordinal not in range(256) 

Ich habe auch versucht cp1252 und utf8, aber sie auch einen Fehler zurück.

+0

Sie können nicht kodieren Unicode mit cp1252 oder Latin-1, aber utf-8 sollte in Ordnung sein, und nach meinen Tests ist es eigentlich in Ordnung. Auf meinem Rechner 'print ([x.encode ('utf-8') für x in lst])' funktionierte für jede Liste. – Tryph

+0

@Tryph aber wie kann ich es als nächstes in 'latin-1' konvertieren? –

+1

Je nach dem Titel Ihrer Frage nehme ich an, dass diese Listen kyrillische Zeichen enthalten. Die Latin-1-Codierung codiert keine kyrillischen Zeichen, sodass Sie mit dieser Codierung keine kyrillischen Zeichen codieren können. – Tryph

Antwort

1

Sie haben bereits Russisch (zumindest einige davon), Sie müssen nur die Zeichenfolgen, nicht die Liste, auf einem IDE/Terminal drucken, das russische Zeichen unterstützt. Hier ist ein Auszug, gedruckt mit Python 2.7 auf einem UTF-8-Terminal:

L = [u'\u0442\u043e\u0432\u0430\u0440', u'\u0434\u0436\u0438\u043d\u0441\u044b'] 

print L 

for s in L: 
    print s 

Ausgang:

[u'\u0442\u043e\u0432\u0430\u0440', u'\u0434\u0436\u0438\u043d\u0441\u044b'] 
товар 
джинсы 
Verwandte Themen