238 votes

Comment convertir une chaîne de caractères en utf-8 en Python

J'ai un navigateur qui envoie des caractères utf-8 à mon serveur Python, mais lorsque je le récupère à partir de la chaîne de requête, l'encodage que Python renvoie est ASCII. Comment puis-je convertir la chaîne en clair en utf-8 ?

NOTE : La chaîne passée depuis le web est déjà encodée en UTF-8, je veux juste que Python la traite comme UTF-8 et non ASCII.

1 votes

0 votes

Je pense qu'un meilleur titre serait Comment convertir une chaîne en unicode sans traduction ?

3 votes

En 2018, python 3 si vous obtenez l'erreur de décodage ascii faire "some_string".encode('utf-8').decode('utf-8')

0voto

haccks Points 33022

Vous pouvez utiliser la bibliothèque standard de python codecs module .

import codecs
codecs.decode(b'Decode me', 'utf-8')

-1voto

David-Star Points 37

Oui, vous pouvez ajouter

# -*- coding: utf-8 -*-

dans la première ligne de votre code source.

Vous pouvez lire plus de détails ici https://www.python.org/dev/peps/pep-0263/

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X