Home  >  Article  >  Backend Development  >  Python solves the problem of exceptions thrown when writing Chinese to Excel

Python solves the problem of exceptions thrown when writing Chinese to Excel

不言
不言Original
2018-05-03 13:39:552027browse

The following is a Python article that solves the problem of exceptions thrown when writing Chinese to Excel. It has a good reference value and I hope it will be helpful to everyone. Let's take a look together

Recently received a request from the business department, which requires statistical results to be sent to the business department every day. When debugging the python script, the exported Excel title is in Chinese and the following exception is always thrown

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: &#39;ascii&#39; codec can&#39;t decode byte 0xe6 in position 0: ordinal not in range(128)

The solution is to set the character set when creating the workbook:

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

The normal default encoding is ascii, so writing Chinese decoding will throw Exception, just set it to utf-8.

Related recommendations:

Python's method to solve the problem of N-level steps

Python solves the problem of Fedora decompressing zip in Chinese The method of garbled characters

The above is the detailed content of Python solves the problem of exceptions thrown when writing Chinese to Excel. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn