Code de caractère | Code de caractère "A" | len('Ah') |
---|---|---|
unicode | \u3042 | 1 |
euc-jp | \xa4\xa2 | 2 |
utf-8 | \xe3\x81\x82 | 3 |
conversion | code | Valeur de retour |
---|---|---|
euc-jp → unicode | unicode('\xa4\xa2','euc-jp') | u'\u3042' |
euc-jp → unicode | '\xa4\xa2'.decode('euc-jp') | u'\u3042' |
utf-8 → unicode | unicode('\xe3\x81\x82','utf-8') | u'\u3042' |
utf-8 → unicode | '\xe3\x81\x82'.decode('utf-8') | u'\u3042' |
unicode → euc-jp | u'\u3042'.encode('euc-jp') | '\xa4\xa2' |
unicode → utf-8 | u'\u3042'.encode('utf-8') | '\xe3\x81\x82' |
utf-8 → unicode → euc-jp | unicode('\xe3\x81\x82','utf-8').encode('euc-jp') | '\xa4\xa2' |
utf-8 → unicode → euc-jp | '\xe3\x81\x82'.decode('utf-8').encode('euc-jp') | '\xa4\xa2' |
euc-jp → unicode → utf-8 | unicode('\xa4\xa2','euc-jp').encode('utf-8') | '\xe3\x81\x82' |
euc-jp → unicode → utf-8 | '\xa4\xa2'.decode('euc-jp').encode('utf-8') | '\xe3\x81\x82' |
Unicode
Au moment d'Unicode
>>> string=u'Ah'
>>> string
u'\u3042'
EUC-JP -> Unicode
EUC-Au moment de JP
>>> string='Ah'
>>> string
'\xa4\xa2'
>>> len(string)
2
Faux
>>> unicode(string)
Traceback (most recent call last):
File "<stdin>", line 1, in ?
UnicodeDecodeError: 'ascii' codec can't decode byte 0xa4 in position 0: ordinal not in range(128)
Positif
>>> unicode(string,'euc-jp')
u'\u3042'
UTF -> Unicode
UTF-À 8
>>> string='Ah'
>>> string
'\xe3\x81\x82'
>>> len(string)
3
Faux
>>> unicode(string)
Traceback (most recent call last):
File "<stdin>", line 1, in ?
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe3 in position 0: ordinal not in range(128)
Positif
>>> unicode(string,'utf-8')
u'\u3042'
Type de conversion | Fonction ou méthode |
---|---|
Chaîne de caractères non-unicode → chaîne de caractères unicode | unicode([Chaîne non-unicode], [Code de caractère], [errors='strict']) |
Chaîne de caractères non-unicode → chaîne de caractères unicode | Chaîne non-unicode.decode([Code de caractère], [errors='strict']) |
chaîne de caractères unicode → chaîne de caractères non-unicode | chaîne unicode.encode([Code de caractère], [errors='strict']) |
errors
unicode | encode | decode | errors | Contenu |
---|---|---|---|---|
○ | ○ | ○ | strict | Lancer UnicodeDecodeError |
○ | ○ | ○ | replace | U+FFFD,Ajout de «CARACTÈRE DE REMPLACEMENT» |
○ | ○ | ○ | ignore | Supprimer des caractères de la chaîne Unicode résultante |
× | ○ | × | xmlcharrefreplace | Utiliser des références de caractères XML |