乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > <em>python</em>用xlwt向xls中写入中文,显示乱码该怎么解决

<em>python</em>用xlwt向xls中写入中文,显示乱码该怎么解决

作者:乔山办公网日期:

返回目录:excel表格制作


这个是因为编码问题,xls默认应该是gbk或者gb2312如果你把utf8编码的中文写进去就会是乱码。写入前用.encode(“utf8”)一下应该就可以了

如果使用python2那么就需要
ws.write(0,0,i[0].decode('gbk'))

这样改一下编码
可以直接成成python3,就不用烦这些编码问题了。
使用encode('gbk')或者encode('u8')编码

乱码是编码问题,微软的excel默认打开的编码是gbk,如果你写入的数据是copy非gbk编码的,那么使用微软excel打开就会出现乱码的情况。解决方法为:对要写入的数据编码为gbk之后在进行写入,在python中的简单的操作方法如下:

    1.源数据为unicode编码zhidao,则直接使用encode("gbk")即可转换编码;

    str = u"我爱中国共产党"  # unicode编码的字符串
    des_str = str.encode("gbk")  #转换为gbk编码

    2.源数据不是unicode编码,那么必须先使用decode函数解码为unicode编码,在按照第一种情况转换为gbk编码。

    str = u"我爱中国共产党"  # unicode编码的字符串
    src_str = str.encode("utf-8")  # 源数据格式utf-8
    des_str = str.decode("utf-8").encode("gbk")  #转换为gbk编码

注意:encode和decode方法为字符串的方法,不能应用与列表等其他类型的数据上

相关阅读

关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网