UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position 15-17: ordinal not in range(128)
python中输出print(“中文”)显示错误变成print("\u6211\u662f\u72d7")这种编码格式
编码问题的解决方式
报错形式
解决方法
在所处python环境中,终端输入:
export PYTHONIOENCODING=utf8
更新编码格式即可
亲测有效!!!
终极长久解决方案
在linux 查看/修改系统编码
在终端输入locale查看系统编码格式如下
locale
修改Linux系统编码为UTF-8
在root/.profile文件下添加如下代码
#C代表计算机语言,zh_CN代表中国字符集
export LANG=C.UTF-8
export LANGUAGE=C.UTF-8
#export LANG=zh_CN.UTF-8
#export LANGUAGE=zh_CN.UTF-8
然后重启终端,重启vscode
之前搜出来的
#coding=utf-8
#-- coding: utf-8 --
import sys
reload(sys)
sys.setdefaultencoding(‘utf8’)
这些,我在本机中测试无效,
但是搜出来大部分解决方案是这些,可能大家遇到的问题不同吧
本文做个笔记吧,能帮到遇到同样问题的友友最好!!!