Maison  >  Article  >  développement back-end  >  Explication détaillée de la méthode de conversion du codage de caractères Python

Explication détaillée de la méthode de conversion du codage de caractères Python

高洛峰
高洛峰original
2017-03-17 16:53:411694parcourir

python a str object et un objet unicode string, qui peuvent tous deux stocker le codage en octets des caractères, mais ils sont de types différents. est très important et c’est pourquoi il y a encodage et décodage. La signification de

encoder et décoder en pyhton peut être exprimée comme

encoder

unicode ------------ - ------------> str

unicode <----------------------------- - str

decode

Plusieurs méthodes courantes :

str_string.decode('codec') consiste à convertir str_string est unicode_string, le codec est la méthode d'encodage de la source str_string

unicode_string.encode('codec') consiste à convertir unicode_string en str_string, le codec est la méthode d'encodage de la cible str_string

str_string.decode( 'from_codec ').encode('to_codec') peut réaliser une conversion entre des chaînes str_strings de différents encodages

Par exemple :

>>> 🎜> >>> t

'xb3xa4xb3xc7'

>>>

'xe9x95xbfxe5x9fx8e'

str_string.encode('codec') appelle d'abord le codec par défaut du système pour convertir str_string en unicode_string, puis utilise le codec du paramètre encode pour convertir en str_string final. str_string.decode('sys_codec').encode('codec').

unicode_string.decode('codec') n'a fondamentalement aucun sens. Unicode n'utilise qu'un seul encodage Unicode en python, UTF16 ou UTF32 (déjà déterminé lors de la compilation de python), et il n'est pas nécessaire de convertir l'encodage.

Remarque : Le codec par défaut est spécifié dans le fichier sitecustomize.py sous site-packages, tel que

import sys

sys.setdefaultencoding('utf-8')

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn