【发布时间】:2011-08-24 21:17:14
【问题描述】:
我有一个程序,当在 Python 2.7 中运行时,它会为标准输出生成正确的 Unicode 输出。在 Python 2.4 中运行时,我得到UnicodeEncodeError: 'ascii' codec can't encode characters in position 1-4: ordinal not in range(128)。 2.4 版和 2.7 版之间有什么变化现在可以使用?
【问题讨论】:
-
我们不是通灵者。显示代码。
-
@Karl Knechtel:它只是来自如下声明:
sys.stdout.write(unicode(data))或sys.stdout.write(data)。问题是,这意味着问题来自其他地方......我不知道在哪里(应用程序相对较大)。 -
试试
import sys; print sys.getdefaultencoding()看看两者默认的unicode-to-string编码是否不同。 -
@Russell Borogove:好的,有趣,让我看看……两者都返回“asciii”!多么令人费解!
-
关于故障点的数据(其来源、价值)您能告诉我们更多信息吗?
标签: python exception unicode encoding