Python 解决中文写入Excel时抛异常的问题


Posted in Python onMay 03, 2018

近期接到业务部门需求,需将统计结果每日发送到业务部门,在调试python脚本的时候,导出的Excel标题为中文,总是抛出以下异常

Traceback (most recent call last): 
 File "totalpx.py", line 99, in <module> 
 export() 
 File "totalpx.py", line 54, in export 
 workbook.save(out_path) 
 File "/usr/lib/python2.7/site-packages/xlwt-1.2.0-py2.7.egg/xlwt/Workbook.py", line 710, in save 
 doc.save(filename_or_stream, self.get_biff_data()) 
 File "/usr/lib/python2.7/site-packages/xlwt-1.2.0-py2.7.egg/xlwt/Workbook.py", line 674, in get_biff_data 
 shared_str_table = self.__sst_rec() 
 File "/usr/lib/python2.7/site-packages/xlwt-1.2.0-py2.7.egg/xlwt/Workbook.py", line 636, in __sst_rec 
 return self.__sst.get_biff_record() 
 File "/usr/lib/python2.7/site-packages/xlwt-1.2.0-py2.7.egg/xlwt/BIFFRecords.py", line 77, in get_biff_record 
 self._add_to_sst(s) 
 File "/usr/lib/python2.7/site-packages/xlwt-1.2.0-py2.7.egg/xlwt/BIFFRecords.py", line 92, in _add_to_sst 
 u_str = upack2(s, self.encoding) 
 File "/usr/lib/python2.7/site-packages/xlwt-1.2.0-py2.7.egg/xlwt/UnicodeUtils.py", line 50, in upack2 
 us = unicode(s, encoding) 
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position 0: ordinal not in range(128)

解决方法是,在创建workbook的时候设置字符集即可解决:

workbook = xlwt.Workbook(encoding = 'utf-8')

正常默认编码是ascii,所以写入中文解码会抛异常,设置为utf-8就行。

以上这篇Python 解决中文写入Excel时抛异常的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
从零学Python之入门(五)缩进和选择
May 27 Python
Python+django实现文件上传
Jan 17 Python
PyCharm使用教程之搭建Python开发环境
Jun 07 Python
Python数据操作方法封装类实例
Jun 23 Python
详解Python3.6安装psutil模块和功能简介
May 30 Python
python使用多进程的实例详解
Sep 19 Python
PythonPC客户端自动化实现原理(pywinauto)
May 28 Python
深入了解Python enumerate和zip
Jul 16 Python
python语音识别指南终极版(有这一篇足矣)
Sep 09 Python
sublime3之内网安装python插件Anaconda的流程
Nov 10 Python
Django基于Models定制Admin后台实现过程解析
Nov 11 Python
Python TypeError: ‘float‘ object is not subscriptable错误解决
Dec 24 Python
python 将数据保存为excel的xls格式(实例讲解)
May 03 #Python
python更改已存在excel文件的方法
May 03 #Python
python写入已存在的excel数据实例
May 03 #Python
Python实现输出某区间范围内全部素数的方法
May 02 #Python
使用Python通过win32 COM打开Excel并添加Sheet的方法
May 02 #Python
python实战之实现excel读取、统计、写入的示例讲解
May 02 #Python
python向已存在的excel中新增表,不覆盖原数据的实例
May 02 #Python
You might like
学习discuz php 引入文件的方法DISCUZ_ROOT
2009/06/21 PHP
PHP程序开发范例学习之表单 获取文本框的值
2011/08/08 PHP
PHP中date与gmdate的区别及默认时区设置
2014/05/12 PHP
destoon调用企业会员公司形象图片的实现方法
2014/08/21 PHP
试用php中oci8扩展
2015/06/18 PHP
PHP函数实现从一个文本字符串中提取关键字的方法
2015/07/01 PHP
PHP完全二叉树定义与实现方法示例
2017/10/09 PHP
PHP利用递归函数实现无限级分类的方法
2019/03/22 PHP
php 实现简单的登录功能示例【基于thinkPHP框架】
2019/12/02 PHP
根据邮箱的域名跳转到相应的登录页面的代码
2012/02/27 Javascript
js判断undefined类型示例代码
2014/02/10 Javascript
举例简介AngularJS的内部语言环境
2015/06/17 Javascript
javascript中eval和with用法实例总结
2015/11/30 Javascript
基于javascript实现动态显示当前系统时间
2016/01/28 Javascript
Bootstrap零基础入门教程(二)
2016/07/18 Javascript
浅谈regExp的test方法取得的值变化的原因及处理方法
2017/03/01 Javascript
利用JS如何计算字符串所占字节数示例代码
2017/09/13 Javascript
详解vue通过NGINX部署在子目录或者二级目录实践
2018/09/03 Javascript
详解ESLint在Vue中的使用小结
2018/10/15 Javascript
微信小程序如何调用json数据接口并解析
2019/06/29 Javascript
javascript中innerHTML 获取或替换html内容的实现代码
2020/03/17 Javascript
解决vue字符串换行问题(绝对管用)
2020/08/06 Javascript
[53:10]完美世界DOTA2联赛决赛日 FTD vs GXR 第二场 11.08
2020/11/11 DOTA
python实现猜单词小游戏
2020/05/22 Python
Python生成一个迭代器的实操方法
2019/06/18 Python
200行python代码实现2048游戏
2019/07/17 Python
高校毕业生自我鉴定
2013/10/27 职场文书
采购主管的岗位职责
2013/12/17 职场文书
外企求职信范文分享
2013/12/31 职场文书
中文教师求职信
2014/02/22 职场文书
有关环保的标语
2014/06/13 职场文书
保卫工作个人总结
2015/03/03 职场文书
2015年发展党员工作总结报告
2015/03/31 职场文书
2015年七夕情人节感言
2015/08/03 职场文书
有关信念的名言语录集锦
2019/12/06 职场文书
python基础之模块的导入
2021/10/24 Python