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: 'ascii' codec can'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!