无法打印unicode字符串

问题描述 投票:0回答:3

我正在使用dbf数据库和亚美尼亚字母,但DBF编码未知,因此我创建了一个字母映射来解码恢复的字符串。现在,我有一个有效的Unicode字符串,但是由于此错误,我无法将其打印出来:

UnicodeEncodeError:'charmap'编解码器无法编码位置0-5处的字符:字符映射到

到目前为止我尝试过的:

print u'%s' %str ## Returns mentioned error
print repr(str) ## Returns string in this form u'\u054c\u0561\u0586\u0561\u0575\u0565\u056c

如何解决?

python unicode python-unicode
3个回答
1
投票

尝试执行以下操作:

newStr = str.encode("utf-8")
print newStr

P.S。如果使用另一种语言存在此问题,则可以在将字母写到文件中时查看它们。


0
投票

就我而言,我已经在IDE中更改了编码设置。我使用PyCharm。

转到:“文件->设置...->编辑器->文件编码”,然后将所有内容更改为所需的字符集。希望对您有所帮助。Where to change File Encodings


-1
投票

要打印有效的Unicode字符串,请使用print(unicode_string)

该错误表明您正在使用Windows。要在Windows上打印Unicode,请参见this answer -适用于Python 3.4,但应在经过少量修改的情况下适用于Python 2.7。

© www.soinside.com 2019 - 2024. All rights reserved.