zoukankan      html  css  js  c++  java
  • python运行代码出现'ascii' codec can't decode byte 0xb4 in position 11: ordinal not in range(128)

    学习机器学习时出现的问题,百度了半天也没弄好,但知道了大概的原因

    原因如下:因为默认情况下,Python采用的是ascii编码方式,而Python在进行编码方式之间的转换时,会将 unicode 作为“中间编码”,但 unicode 最大只有 128 那么长,所以这里当尝试将 ascii 编码字符串转换成"中间编码" unicode 时由于超出了其范围,就报出了如上错误。

    既然知道了原因,那就好解决了不是

    解决方法如下:

    1.修改默认编码格式: 例如# encoding =utf-8

    2.在/usr/lib/python2.7/site-packages/目录下添加一个sitecustomize.py文件,内容如下:

    import sys
    sys.setdefaultencoding('utf-8')

    3.上面那个办法我没试过,但感觉应该可以,它原理上是修改了所有文件的编码格式。

    然而我错的原因在于路径有中文。。。改成英文就好了,如果有同样情况的不妨一试

  • 相关阅读:
    1.17 Python基础知识
    反射
    面向对象——类
    异常处理
    面向对象——静态方法、类方法、属性法法,其他特殊方法
    面向对象——继承
    question
    configparser模块
    hashlib模块
    shelve模块
  • 原文地址:https://www.cnblogs.com/xinzhiyan/p/7810987.html
Copyright © 2011-2022 走看看