zoukankan      html  css  js  c++  java
  • python print 打印的数据包含中文,打印报错UnicodeDecodeError: 'gbk' codec can't decode bytes in position 459-460: illegal multibyte sequence解决办法

    python 2.7 print 的数据中若包括中文,打印则会报错UnicodeDecodeError: 'gbk' codec can't decode bytes in position 459-460: illegal multibyte sequence,

    错误原因:将一个字符串,通过gbk的方式,去解码,想要获得Unicode字符串出错了,一般是因为解码的方式与其原编码方式不一致所致,比如该数据编码格式是utf-8,你却用gbk去解码,当然出错,“解码方式和编码方式要保持一致”,你应该用utf-8的解码方式去解码utf-8编码的数据,才能成功解码为unicode类型的数据。

    具体解决办法:

    1、通过encodetype=chardet.detect(data)['encoding']查看打印的数据data的编码格式encodetype;

    2、通过data.decode('encodetype')解码该数据,将成功解码为unicode类型的数据。

    3、示例:

    这样print就可以正常打印包含中文的数据了。

  • 相关阅读:
    常用FPGA功能块记录
    鸿蒙相关
    微波相关
    Python库大全
    C#环境实现代码的自动生成编译
    STM32相关
    硬件相关
    C# 获取枚举中文注释
    C# 获取自定义特性值
    Asp.Net Core 中 Host 与 WebHost的区别
  • 原文地址:https://www.cnblogs.com/apple2016/p/10191143.html
Copyright © 2011-2022 走看看