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