« Coder avec Unicode/Conversion » : différence entre les versions

Contenu supprimé Contenu ajouté
Si les données en entrée ne sont pas valides, une erreur de conversion d'encodage peut se produire.
Ligne 86 :
a = u'\xe2\xe4\xe0\xe9\xe8\xeb\xea' # L'écriture en hexadécimal permet de s'affranchir de l'encodage utilisé par le fichier source
a.encode('utf-8') ## Retourne la séquence d'octets '\xc3\xa2\xc3\xa4\xc3\xa0\xc3\xa9\xc3\xa8\xc3\xab\xc3\xaa'
</source>
 
 
En python 3:
 
Exemple de création d'un caractère à partir de sa forme encodée en UTF-16:
 
<source lang=python>
b'\xff\xfeW['.decode('utf-16')
#return '字'
</source>
 
 
Exemple de conversion d'un caractère non latin dans un codage UTF8 ou UTF-16:
 
<source lang=python>
 
nonlat = '字' # Suppose que l'encodage du fichier est UTF-8.
nonlat = b'\xff\xfeW['.decode('utf-16') # Quel que soit l'encodage du fichier source
 
bytes(nonlat, 'utf-8')
# return b'\xe5\xad\x97'
 
nonlat.encode() # the encode method in Python 3.x uses the UTF-8 encoding by default.
#return '\xe5\xad\x97'
nonlat.encode('utf-16')
#return b'\xff\xfeW['
 
</source>