zoukankan      html  css  js  c++  java
  • 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环境中的问题,通过以下办法解决。
    1. # encoding=utf8  
    2. import sys  
    3.   
    4. reload(sys)  
    5. sys.setdefaultencoding('utf8')   

    但我在python3环境下为什么一直错误呢?  

    通过修改代码中的编解码中文等操作均无效,折腾半天考虑 有没有是linux语言环境变量的问题

    检查当前shell环境

    $ echo $SHELL

    csh

    检查语言环境变量

    $ env |grep LANG
    LANG=zh

    将语言环境变量修改为

    setenv LANG en_US.UTF-8

    问题解决

  • 相关阅读:
    配置FTP服务
    Tomcat
    LNMP环境配置(下)
    LNMP环境配置(上)
    Ansible---
    Ansible
    正则三剑客-------grep
    Docker仓库的使用与维护
    Docker 引擎的安装 -->>存储库安装
    shell脚本实例
  • 原文地址:https://www.cnblogs.com/jonyq/p/5938961.html
Copyright © 2011-2022 走看看