python3在linux下的编码错误
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python3在linux下的编码错误相关的知识,希望对你有一定的参考价值。
$ python3 aaa.py ‘ascii‘ codec can‘t encode characters in position 162-165: ordinal not in range(128)
aaa.py 文件已经设置
#!/usr/bin/env python3
# coding = ‘utf-8‘
但执行总是报错
‘ascii‘ codec can‘t encode characters in position 162-165: ordinal not in range(128)
经过网上查询此种错误基本都是2.7环境中的问题,通过以下办法解决。
- # encoding=utf8
- import sys
- reload(sys)
- sys.setdefaultencoding(‘utf8‘)
但我在python3环境下为什么一直错误呢?
通过修改代码中的编解码中文等操作均无效,折腾半天考虑 有没有是linux语言环境变量的问题
检查当前shell环境
$ echo $SHELL
csh
检查语言环境变量
$ env |grep LANG
LANG=zh
将语言环境变量修改为
setenv LANG en_US.UTF-8
问题解决
以上是关于python3在linux下的编码错误的主要内容,如果未能解决你的问题,请参考以下文章