J'utilise Pylônes cadre, modèle Mako pour une application basée sur le Web. Je ne me suis pas vraiment soucié de la façon dont Python gère les chaînes Unicode. J'ai eu un moment de tension quand j'ai vu mon site s'écraser lorsque la page a été rendue et plus tard j'ai appris que c'était lié à UnicodeDecodeError. Après avoir vu l'erreur, j'ai démarré le maillage autour de mon code Python en ajoutant le codage, décodé les appels pour la chaîne avec l'option 'ignore' mais je ne pouvais toujours pas voir les erreurs disparues quelque temps.Meilleures pratiques pour Python UnicodeDecodeError
Enfin, je décodais en ascii avec ignore et faisais fonctionner le site sans accident.
Les entrées sur mon site proviennent de nombreux sites. Cela signifie que je ne contrôle pas les langues ou la langue de choix. Mon site prend en charge les langues internationales et l'anglais. J'ai l'agrégation de flux qui ne concerne généralement pas unicode/ascii/utf-8. Pendant que j'affiche le texte à travers le modèle mako, je l'affiche tel quel.
N'étant pas un expert Web, quelles sont les meilleures pratiques pour gérer les chaînes dans le projet Python? Dois-je m'occuper uniquement du rendu du texte ou de toute la phase de l'application?
+1 Une bonne réponse, donc quand vous lisez un fichier, décodez toujours le premier droit? si un fichier txt n'offre pas d'encodage, comment puis-je savoir? –