Maison > développement back-end > Tutoriel Python > Python résout le problème des exceptions levées lors de l'écriture du chinois dans Excel

Python résout le problème des exceptions levées lors de l'écriture du chinois dans Excel

不言
Libérer: 2018-05-03 13:39:55
original
2105 Les gens l'ont consulté

Ce qui suit est un article Python qui résout le problème des exceptions levées lors de l'écriture du chinois dans Excel. Il a une bonne valeur de référence et j'espère qu'il sera utile à tout le monde. Allons jeter un oeil

Récemment, nous avons reçu une demande du service commercial, et les résultats statistiques doivent être envoyés au service commercial chaque jour. Lors du débogage du script python, le titre Excel exporté est. en chinois, et l'exception suivante est toujours levée

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)
Copier après la connexion

La solution est de définir le jeu de caractères lors de la création le classeur :

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

La valeur par défaut normale l'encodage est ascii, donc écrivez le décodage chinois. Une exception sera levée, définissez-la simplement sur utf-8.

Recommandations associées :

Méthode de Python pour résoudre le problème des N étapes Comment tronquer les caractères

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal