Maison > Article > développement back-end > Introduction à la méthode de fichier de codage de caractères Python
Développement de l'encodage de caractères
ASCII 255 ne prend en charge que les lettres et les chiffres anglais, les caractères spéciaux 1 octet
Unicode chinois et anglais unifié 2 octets
utf-8 chinois>3 octets anglais> ;1bytes
type d'octets
Les données texte sont toujours unicode représentées par le type str, les données binaires sont représentées par le type d'octets
Les données binaires sont utilisées dans les fichiers vidéo, audio et l'envoi Données de transmission réseau Socket, etc.
Convertir la chaîne en binaire str.encode("encoding=utf-8")
Convertir le binaire en chaîne b'xe2x82'.decode("encoding=utf -8")
Le descripteur de fichier est l'adresse mémoire de l'objet fichier
Encodage et transcodage des caractères
Les caractères chinois ne peuvent pas être stockés dans la table de codes ASCII. La valeur par défaut Le codage des caractères système de Windows est GBK.
Le codage des caractères Unicode peut stocker tous les caractères du monde, mais tous les caractères occupent deux octets. Il s'avère qu'un fichier anglais de 2 Mo
nécessite 4 Mo de. stockage après avoir utilisé Unicode. Convertir l'espace
chaîne utf-8 en caractère gbk
La conversion de deux chaînes de codage doit être effectuée en les convertissant d'abord en codage Unicode
Unicode (unifié). code, Unicode, Unicode) est un codage de caractères utilisé sur les ordinateurs. Unicode a été créé pour résoudre les limites des schémas de codage de caractères traditionnels. Il définit un codage binaire unifié et unique pour chaque caractère dans chaque langue
Il existe essentiellement deux situations dans lesquelles des caractères tronqués apparaissent :
1. Il n'y a pas de codage de caractères2. Le jeu de caractères spécifié par d'autres lors de l'écriture de ce programme est dans la mauvaise position avec le jeu de caractères que nous utilisonsDans le Version 2.x de Python, lorsque Pyton interprète le fichier .py, l'encodage par défaut est le code ASCIIL'encodage par défaut en Python3 est l'encodage UnicodeCar en python2. str ="Bonjour" //Cette chaîne est encodée en utf-8 new_str=str.decode('utf-8') / / Transmettez le format d'encodage original de str à la fonction de décodage pour le convertir en encodage Unicode ret = new_str.encode('GBK') //Convertir l'encodage Unicode en une chaîne codée GBK str = u"Bonjour" L'ajout d'une lettre u devant la chaîne indique que la chaîne est définie sur l'encodage Unicode encodage Lorsque l'interpréteur python charge le code dans le fichier .py, il will Le contenu est codé (ascill par défaut), donc si le type d'encodage n'est pas spécifié, signalera une erreur s'il y a du chinois. Le processus de travail de Pythonpython lit le code dans la mémoire 2. Analyse lexicale et syntaxique 3. Mettez-le dans le compilateur ---》 Générez le bytecode 4. Exécutez le bytecode -- - 》Générer l'exécution du code machine CPUVariableLa valeur de la chaîne ne peut pas être modifiée. Elle est continue dans la mémoire. Si vous souhaitez la modifier, vous devez la réserver ultérieurement. la modification n'est pas prise en charge !Caractéristiques de la chaîne, une fois modifiées, recréez-la
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!