[已解决] UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-15: ordinal not in range(128)
[背景]
在 python 脚本中执行:
i['title']=temp.string.strip().decode("gbk")
即将 temp.string.strip() 所得到的字符串进行 gbk 解码, 结果出现上述错误:
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-15: ordinal not in range(128)
[解决过程]
最后是借鉴这里:
[转] Python 设置系统默认编码 http://shirley-ren.iteye.com/blog/1018750
http://againinput4.blog.163.com/blog/static/17279949120111110022169/
而解决的.
即, 添加了:
- import sys
- reload(sys)
- sys.setdefaultencoding('utf8')
然后就可以正常执行了.
来源: http://www.taocms.org/686.html