python 3 编码问题

情况:本地运行ok,部署到服务器上,出现错误,python版本3.x(2.x的处理方式不同,这里只介绍3的解决办法):
‘ascii’ codec can’t encode character ‘\u8ddf’ in position 0: ordinal not in range(128)
原因编码问题:
查看系统环境编码

>>> import sys >>> sys.stdout.encoding 'US-ASCII'

修改方式:
1、
编辑~/.bash_profile文件(’~’指的是用户登录后的默认目录),添加一行:
export LANG=”en_US.UTF-8”
2、代码中增加以下内容
import sys
import codecs
sys.stdout = codecs.getwriter(“utf-8”)(sys.stdout.detach())
3、
PYTHONIOENCODING=utf-8 python xx.py
【python 3 编码问题】参考:
https://blog.csdn.net/TH_NUM/article/details/80685389

    推荐阅读