Python如何处理unicode-tex

2024-04-19 16:06:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用的是python2.6.6

item = {u'snippet': {u'title': u'How to Pronounce Canap\xe9'}}
title = item['snippet']['title']
print title

结果:

^{pr2}$

期望结果:

How to Pronounce Canapé

这看起来像是一个Unicode问题,我尝试了编码和解码到utf8,但结果还是一样,有什么想法吗?在


Tags: to编码titleunicodeutf8解码itemsnippet
3条回答

您的终端需要UTF-8

$ locale charmap
UTF-8 

Python使用UTF-8打印:

^{pr2}$

更改SecureCRT设置以接受UTF-8。在

如果可能,请使用\u00e9,而不是\xe9。然后在输出unicode字符串时选择适当的编码:

print title.encode('latin1')

什么样的编码是合理的取决于输出到哪里。通常,您必须从环境变量中推断,或者让您的用户在配置文件中进行选择。在

PS:如果您经常处理Unicode字符串,我建议您尽可能切换到python3(例如3.3)。Unicode处理更清晰/明确/理智。在

这很可能是因为Python使用的默认编码与控制台的编码不匹配。看起来Python假设编码是UTF-8,但是控制台将其解释为拉丁语-1。在

相关问题 更多 >