【发布时间】:2013-07-06 04:22:39
【问题描述】:
我一直在尝试编写一个简单的脚本,可以将用户输入(来自 iPhone)保存到文本文件中。我遇到的问题是,当用户使用 Emoji 图标时,它会破坏整个事情。
操作系统:Ubuntu
Python 版本:2.7.3
我的代码目前看起来像这样
f = codecs.open(path, "w+", encoding="utf8")
f.write("Desc: " + json_obj["description"])
f.close()
在描述变量中传递表情符号字符时,我收到错误:
UnicodeEncodeError: 'ascii' codec can't encoding characters in position 7-8: ordinal not in range(128)
感谢任何可能的帮助。
【问题讨论】:
-
json_obj["description"]是unicode还是str?如果是后者,它是什么编码?另外,您能否在错误之前print repr(json_obj["description"]),以便我们可以看到您实际尝试打印的内容? -
另外,
json_obj来自哪里?名称暗示 stdlibjson模块,但键和值显然是str的事实意味着它不是……
标签: python python-2.7 unicode encoding emoji