UnicodedeCodeError: byte de continuation invalide
Lorsque vous essayez de décoder une chaîne en utilisant le "UTF-8" Codec, l'erreur "UnicodedeCodeerrror: ' Le codec utf8 ne peut pas décoder l'octet 0xe9 ... "peut survenir. Cela indique un octet de continuation non valide dans la chaîne.
dans l'extrait de code fourni:
o = "a test of \xe9 char" v = o.decode("utf-8")
La chaîne "Un test de \ xe9 char" contient un caractère représenté par l'octet \ xe9. Cet octet n'est pas un octet de continuation valide dans une séquence UTF-8, donc le codec "UTF-8" ne peut pas le décoder.
Cependant, lorsque vous utilisez le codec "latin-1" à la place, le décodage réussit:
v = o.decode("latin-1")
C'est parce que le codec "latin-1" interprète \ xe9 en tant que caractère à un octet, plutôt que dans le cadre d'une séquence UTF-8. Par conséquent, la chaîne reste une chaîne sans rencontrer le UnicodeDecodeerror.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3