Entwicklung der Zeichenkodierung
ASCII 255 unterstützt nur englische Buchstaben und Zahlen, Sonderzeichen 1 Byte
Unicode Chinesisch und Englisch Unified 2 Byte
utf-8 Chinesisch>3 Byte Englisch > ;1bytes
Byte-Typ
Textdaten sind immer Unicode, dargestellt durch den Typ str, Binärdaten werden durch den Byte-Typ dargestellt
Binärdaten werden in Video-, Audiodateien und beim Senden verwendet Socket-Netzwerkübertragungsdaten usw.
Konvertieren Sie die Zeichenfolge in eine Binärdatei str.encode("encoding=utf-8")
Konvertieren Sie die Binärdatei in eine Zeichenfolge b'xe2x82'.decode("encoding=utf -8")
Das Dateihandle ist die Speicheradresse des Dateiobjekts
Zeichenkodierung und -transkodierung
Chinesische Zeichen können nicht in der ASCII-Codetabelle gespeichert werden. Die Standardeinstellung Die Systemzeichenkodierung von Windows ist GBK.
Unicode-Zeichenkodierung kann alle Zeichen der Welt speichern, aber alle Zeichen belegen zwei Bytes. Es stellt sich heraus, dass eine 2M
englische Datei 4M benötigt Speicher nach Verwendung von Unicode. Konvertieren Sie Leerzeichen
UTF-8-Zeichenfolge in GBK-Zeichen
Die Konvertierung von zwei beliebigen Codierungszeichenfolgen muss zunächst durch Konvertierung in Unicode-Codierung erfolgen
Unicode (Unified Code, Unicode, Unicode) ist eine auf Computern verwendete Zeichenkodierung. Unicode wurde entwickelt, um die Einschränkungen herkömmlicher Zeichenkodierungsschemata zu überwinden. Es legt eine einheitliche und eindeutige Binärkodierung für jedes Zeichen in jeder Sprache fest.
Es gibt grundsätzlich zwei Situationen, in denen verstümmelte Zeichen auftreten:
1. Es gibt keine Zeichenkodierung
Der von anderen beim Schreiben dieses Programms angegebene Zeichensatz steht an der falschen Stelle mit dem von uns verwendeten Zeichensatz
In der 2.x-Version von Python: Wenn Pyton die .py-Datei interpretiert, ist die Standardcodierung der ASCII-Code
Die Standardcodierung in Python3 ist die Unicode-Codierung
Weil in Python2 die Standardcodierung in
str ="Hallo" //Diese Zeichenfolge ist in utf-8 codiert
new_str=str.decode('utf-8') / / Übergeben Sie das ursprüngliche Codierungsformat von str an die Decodierfunktion, um es in Unicode-Codierung zu konvertieren
ret = new_str.encode('GBK') //Konvertieren Sie die Unicode-Codierung in eine GBK-codierte Zeichenfolge
str = u"Hallo" Das Hinzufügen eines u-Buchstabens vor der Zeichenfolge zeigt an, dass die Zeichenfolge auf die Unicode-Kodierung
Kodierung
eingestellt ist. Wenn der Python-Interpreter den Code in die .py-Datei lädt, wird er wird Der Inhalt ist codiert (Standard-ASCILL). Wenn also der Codierungstyp nicht angegeben ist, meldet
einen Fehler, wenn Chinesisch vorhanden ist.
Der Arbeitsprozess von Python
Python liest den Code in den Speicher 2. Lexikalische und syntaktische Analyse 3. Legen Sie ihn in den Compiler ---》 Generieren Sie Bytecode 4. Führen Sie den Bytecode aus -- - 》Maschinencode-CPU-Ausführung generieren
Variable
Der Wert der Zeichenfolge kann nicht geändert werden. Wenn Sie ihn ändern möchten, müssen Sie ihn später reservieren Änderung wird nicht unterstützt!
String-Eigenschaften werden nach der Änderung neu erstellt
Das obige ist der detaillierte Inhalt vonEinführung in die Python-Zeichenkodierungsdateimethode. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!