在unthon中将unicode cyrillic符号转换为字符串

时间:2013-04-25 15:02:27

标签: python string unicode python-2.7

当我尝试转换unicode时:

a = u"Тест"

要字符串:

str(a)

我收到了这个错误:

'ascii' codec can't encode characters in position 0-3: ordinal not in range(128)

我需要str(a)给我输出:

>> str(a)
>> 'Тест'

1 个答案:

答案 0 :(得分:4)

选择一个可以编码西里尔符号的编码,例如UTF-8:

>>> a = u'Тест'

>>> a.encode('utf-8')
'\xd0\xa2\xd0\xb5\xd1\x81\xd1\x82'

ASCII表没有西里尔字符的代码点,因此您需要明确指定编码。

但如果您只想打印字符串,那么您应该关注的是终端的编码和系统字体。