UnicodeEncodeError: ‘latin-1‘ codec can‘t encode characters,python3 乱码

时间:2022年1月27日

环境:SuSE 12 sp3、python 3.6.4、django 2.2

说明:系统是公司给的虚拟服务器,安装时使用的是英文,开发环境是Windows,完全正常,部署到测试服务器(即SuSE)就出现上述错误,经过测试,发现问题出现在该服务器安装系统时,使用的是英文系统,导致出现编码问题。

测试:确认你的服务器是否可以在文本输入中文(我解决的是无法输入中文,输入中文则乱码,如下:

如果你的无法输入中文(输入法显示的是中文,但是输入后变成乱码),以下则可以解决该问题

修改/etc/sysconfig/language文件,如下

vim /etc/sysconfig/language
.
.
.
29 RC_LANG="zh_CN.UTF-8"
.
.
.
121 INSTALLED_LANGUAGES="zh_CN"

#前面的数字是行号

修改后,保存并重启,然后使用locale命令查询,如下,则问题解决

SuSE_server:~ # locale
LANG=POSIX
LC_CTYPE=zh_CN.UTF-8
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值