• (转) UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 4: ordinal not in range(128)


    更新

    更新以后,每次启动终端会提示,import  sitecustomize failed,原因是 setdefaultencoding 在Python2.5以后删掉了,因此我们将 sitecustomize.py的文件内容改为:

    import sys

    reload(sys)  #重新载入

    sys.setdefaultencoding('utf-8')

    启动终端不会再有错误提示,但是在启动 jupyter notebook的时候,有错误,于是又将这个文件的内容更新为:

    import sys
    reload(sys) # Python2.5 初始化后会删除 sys.setdefaultencoding 这个方法,我们需要重新载入
    sys.setdefaultencoding('utf-8')

    str = '中文'
    str.encode('gb18030')

    在启动终端时会显示错误,但是启动jupyter notebook 则可以显示当前目录下的中文.最后我将两个export 语句写入了.bashrc文件.使用notebook时,保证当前目录下无中文.

    我用的方法:

        UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 4: ordinal not in range(128)
        如果出现编码问题:类似错误如下UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 4: ordinal not in range(128),这是由于python2中的编码bug,需要在python目录/lib/python2.7/site-packages/中新建一个文件:
        sitecustomize.py,其中包含下列代码。

        import sys
        sys.setdefaultencoding(‘utf-8’)

        随后再修改系统默认编码:
        export LANG=en_US:UTF-8
        export LANGUAGE=en_US:en
        cd your work_folder,启动`jupyter notebook``即可解决
    ————————————————
    版权声明:本文为CSDN博主「aenjon」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/farphone/article/details/85801266

    其它方法:

    [1]   https://www.jianshu.com/p/516eb2a57ee6

    [2]  https://www.cnblogs.com/lcngu/p/7077137.html

  • 相关阅读:
    如何编写自己的Linux安全检查脚本?
    ubuntu桌面版打开终端Terminal的几种方法
    Docker 学习笔记(CentOS 7.1)
    发送验证码倒计时
    在Thinkphp中使用AJAX实现无刷新分页
    php加密解密
    浏览器用户用滤镜实现网页的翻转效果
    PHP定时执行任务的实现
    PHP GBK UTF8互转
    在php4下可用,简单的php数组转成json格式,
  • 原文地址:https://www.cnblogs.com/hanxinle/p/11625482.html
Copyright © 2020-2023  润新知