Django编码/解码问题

时间:2013-06-03 11:38:09

标签: python django encoding special-characters tastypie

所以我正在使用Django tastypie资源,我正在尝试找到一种通用方法来解码可能发布到资源的任何字符串。

我有一个像这样的名字

  

luiçscoico2#@!&&á

我希望我能够识别编码类型,并对其进行适当的解码。

我正在尝试获取这样的字符串:

  

print bundle.data.get('first_name')

当我执行json转储时,我的字符串名字变得像

  

“雷\ u00e7scoico2#@&安培;!&安培; \ u00e1”

我得到一个内部服务器错误......任何想法?

更新: 我确实得到了

  

UnicodeEncodeError:'ascii'编解码器无法对字符u'\ xe7'进行编码   位置3:序数不在范围内(128)

如果我在执行json转储以发送到服务器之前尝试解码('utf-8')

1 个答案:

答案 0 :(得分:1)

好的,我会试着在这里给出一个半盲的答案。您的字符串已在Unicode,我知道这是因为u'\xe7' which is exactly the ç character

这意味着您不必encode它。如果你需要utf-8中的字符串,那么就这样做:

x.decode('utf-8')

它将可能工作:)

希望这有帮助!