Maison >développement back-end >Tutoriel Python >Comment réparer 'UnicodeDecodeError: le codec 'charmap' ne peut pas décoder l'octet...' de Python ?

Comment réparer 'UnicodeDecodeError: le codec 'charmap' ne peut pas décoder l'octet...' de Python ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-14 20:47:13261parcourir

How to Fix Python's

Erreur de décodage : caractère mappé sur non défini

Lors d'une tentative de lecture d'un fichier texte, un programme Python 3 rencontre une erreur :

UnicodeDecodeError: 'charmap' codec can't decode byte 0x90 in position 2907500: character maps to `<undefined>`

Explication :

Cette erreur signifie que le codec 'charmap' ne peut pas décoder un octet spécifique dans le fichier texte. Le codec 'charmap' est utilisé pour les encodages de caractères qui mappent directement les octets aux caractères.

Solution :

Pour résoudre cette erreur, il est nécessaire d'identifier l'encodage correct du fichier texte et précisez-le lors de l'ouverture du fichier. Étant donné que l'octet 0x90 n'a pas de mappage valide dans l'encodage CP1252, le fichier utilise probablement un encodage différent, tel que UTF-8 ou Latin-1.

Pour ouvrir le fichier en utilisant l'encodage correct, ajoutez le argument d'encodage :

file = open(filename, encoding="utf-8")

Pour Latin-1 encodage :

file = open(filename, encoding="latin-1")

Remarque :

Référez-vous à la documentation sur "Comment déterminer l'encodage du texte" pour vérifier l'encodage correct du fichier texte.

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!

Déclaration:
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