微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python print在不同服务器上的工作方式不同

当我尝试在我的开发服务器上打印unicode字符串时,它正常工作,但生产服务器引发异常.
File "/home/user/twistedapp/server.py",line 97,in stringReceived
    print "sent:" + json
File "/usr/lib/python2.6/dist-packages/twisted/python/log.py",line 555,in write
    d = (self.buf + data).split('\n')
exceptions.UnicodeDecodeError: 'ascii' codec can't decode byte 0xd1 in position 28: ordinal not in range(128)

实际上它是扭曲的应用程序并打印转发到日志文件.

字符串的repr()是相同的.区域设置设置为en_US.UTF-8.

我需要检查哪些配置才能使它在两台服务器上都能正常工作?

解决方法

Twisted的内置日志观察器不支持Unicode.有关为此添加支持的进度,请参阅 http://twistedmatrix.com/trac/ticket/989,或查看可以提供帮助的内容.

解决#989并且修复程序部署在Twisted版本的应用程序之前,请不要记录unicode.只记录str.

原文地址:https://www.jb51.cc/python/185659.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐