2016-10-12 6 views
0

にUnicodeを変換する:私はUnicodeを使用したリストを持っているキリル

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'] 

私は[x.encode('latin-1') for x in lst] を試みたが、それが返されます。

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

私もcp1252utf8を試してみましたが、彼らはまた、エラーを返します。

+0

あなたはCP1252またはラテン-1を使用してユニコードをエンコードすることはできませんが、UTF-8がOKである必要があり、私のテストによれば、それは実際にはOKです。私のマシンでは、 'print([x.encode( 'utf-8')for x in lst])'が各リストのために働いていました。 – Tryph

+0

@Tryphしかし、次に 'latin-1'に変換するには? –

+1

あなたの質問のタイトルによると、これらのリストにはキリル文字が含まれていると仮定します。 Latin-1エンコーディングはキリル文字をコードしないので、このエンコーディングでキリル文字をエンコードすることはできません。 – Tryph

答えて

1

あなたは既にロシア語を持っています(少なくともいくつかはあります)、ロシア語の文字をサポートするIDE /端末で、リストではなく文字列を印刷するだけです。ここではUTF-8端末上のPython 2.7で印刷抜粋は、です:

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

print L 

for s in L: 
    print s 

は出力:

[u'\u0442\u043e\u0432\u0430\u0440', u'\u0434\u0436\u0438\u043d\u0441\u044b'] 
товар 
джинсы 
関連する問題