


Eine kurze Einführung in Probleme mit der String-Kodierung in der Python-Programmierung
Dieser Artikel stellt die String-Programmierung in Python vor Wir haben bereits gesagt, dass String auch ein Datentyp ist, aber Zeichen Was ist das Besondere? bezüglich der Zeichenfolge ist, dass ein Codierungsproblem vorliegt.
Da Computer nur Zahlen verarbeiten können, müssen Sie, wenn Sie Text verarbeiten möchten, den Text vor der Verarbeitung zunächst in Zahlen umwandeln. Die ersten Computer wurden mit 8 Bits als Byte entwickelt. Daher ist die größte Ganzzahl, die durch ein Byte dargestellt werden kann, 255 (binär 11111111 = dezimal 255). Wenn Sie eine größere Ganzzahl darstellen möchten, müssen Sie mehr Bytes verwenden. Beispielsweise ist die maximale Ganzzahl, die durch zwei Bytes dargestellt werden kann, 65535, und die maximale Ganzzahl, die durch 4 Bytes dargestellt werden kann, ist 4294967295.
Da der Computer von Amerikanern erfunden wurde, wurden zunächst nur 127 Zeichen in den Computer codiert, bei denen es sich um englische Groß- und Kleinbuchstaben, Zahlen und einige Symbole handelt. Diese Codierungstabelle wird als ASCII-Codierung bezeichnet, z. B. die Großbuchstaben The Der Code für den Buchstaben A ist 65 und der Code für den Kleinbuchstaben z ist 122.
Aber um Chinesisch zu verarbeiten, reicht ein Byte offensichtlich nicht aus, und es kann nicht zu Konflikten mit der ASCII-Codierung kommen. Daher hat China die GB2312-Codierung zur Codierung von Chinesisch formuliert.
Was Sie sich vorstellen können, ist, dass es Hunderte von Sprachen auf der Welt gibt, die Japanisch in Shift_JIS kompiliert haben, und Südkorea hat Koreanisch in Euc-kr kompiliert. und es wird unweigerlich zu Konflikten kommen, dass in mehrsprachigen gemischten Texten verstümmelte Zeichen angezeigt werden.
So entstand Unicode. Unicode vereint alle Sprachen in einer Reihe von Codierungen, sodass es keine verstümmelten Zeichen mehr gibt.
Der Unicode-Standard entwickelt sich ebenfalls ständig weiter, aber der am häufigsten verwendete Standard ist die Verwendung von zwei Bytes zur Darstellung eines Zeichens (wenn Sie sehr seltene Zeichen verwenden möchten, benötigen Sie 4 Bytes). Moderne Betriebssysteme und die meisten Programmiersprachen unterstützen Unicode direkt.
Werfen wir nun einen Blick auf den Unterschied zwischen ASCII-Kodierung und Unicode-Kodierung: Die ASCII-Kodierung beträgt 1 Byte, während die Unicode-Kodierung normalerweise 2 Bytes beträgt.
Der in ASCII codierte Buchstabe A ist dezimal 65, binär 01000001;
Das in ASCII codierte Zeichen 0 ist dezimal 48, binär 00110000. Beachten Sie, dass sich das Zeichen „0“ von der Ganzzahl unterscheidet 0 ;
Chinesische Zeichen haben den Bereich der ASCII-Kodierung überschritten. Die Unicode-Kodierung ist 20013 in Dezimalzahl und 00101101 in Binärform.
Sie können davon ausgehen, dass Sie, wenn Sie das ASCII-codierte A in Unicode codieren, nur 0 voranstellen müssen. Daher ist die Unicode-Codierung von A 00000000 01000001.
Es ist ein neues Problem aufgetreten: Bei einer Vereinheitlichung in die Unicode-Kodierung verschwindet das Problem verstümmelter Zeichen. Wenn der Text, den Sie schreiben, jedoch grundsätzlich ausschließlich auf Englisch verfasst ist, benötigt die Unicode-Kodierung doppelt so viel Speicherplatz wie die ASCII-Kodierung, was hinsichtlich der Speicherung und Übertragung sehr unwirtschaftlich ist.
Daher ist im Sinne der Erhaltung die UTF-8-Kodierung erschienen, die die Unicode-Kodierung in eine „Kodierung mit variabler Länge“ umwandelt. Die UTF-8-Kodierung kodiert ein Unicode-Zeichen in 1-6 Bytes entsprechend unterschiedlicher Zahlengrößen. Häufig verwendete englische Buchstaben werden in 1 Byte kodiert, und chinesische Zeichen werden normalerweise in 1-6 Bytes kodiert. In 4-6 Bytes kodiert. Wenn der Text, den Sie übertragen möchten, eine große Anzahl englischer Zeichen enthält, kann die UTF-8-Kodierung Platz sparen:
Sie werden also sehen, dass der Quellcode vieler Webseiten Informationen wie weisen darauf hin, dass die Webseite UTF-8-Codierung verwendet.
Das obige ist der detaillierte Inhalt vonEine kurze Einführung in Probleme mit der String-Kodierung in der Python-Programmierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Lösung für Erlaubnisprobleme beim Betrachten der Python -Version in Linux Terminal Wenn Sie versuchen, die Python -Version in Linux Terminal anzuzeigen, geben Sie Python ein ...

Wie lehre ich innerhalb von 10 Stunden die Grundlagen für Computer -Anfänger für Programmierungen? Wenn Sie nur 10 Stunden Zeit haben, um Computer -Anfänger zu unterrichten, was Sie mit Programmierkenntnissen unterrichten möchten, was würden Sie dann beibringen ...

Bei der Verwendung von Pythons Pandas -Bibliothek ist das Kopieren von ganzen Spalten zwischen zwei Datenrahmen mit unterschiedlichen Strukturen ein häufiges Problem. Angenommen, wir haben zwei Daten ...

Wie kann man nicht erkannt werden, wenn Sie Fiddlereverywhere für Man-in-the-Middle-Lesungen verwenden, wenn Sie FiddLereverywhere verwenden ...

Regelmäßige Ausdrücke sind leistungsstarke Tools für Musteranpassung und Textmanipulation in der Programmierung, wodurch die Effizienz bei der Textverarbeitung in verschiedenen Anwendungen verbessert wird.

Wie hört Uvicorn kontinuierlich auf HTTP -Anfragen an? Uvicorn ist ein leichter Webserver, der auf ASGI basiert. Eine seiner Kernfunktionen ist es, auf HTTP -Anfragen zu hören und weiterzumachen ...

Wie erstellt in Python ein Objekt dynamisch über eine Zeichenfolge und ruft seine Methoden auf? Dies ist eine häufige Programmieranforderung, insbesondere wenn sie konfiguriert oder ausgeführt werden muss ...

In dem Artikel werden beliebte Python-Bibliotheken wie Numpy, Pandas, Matplotlib, Scikit-Learn, TensorFlow, Django, Flask und Anfragen erörtert, die ihre Verwendung in wissenschaftlichen Computing, Datenanalyse, Visualisierung, maschinellem Lernen, Webentwicklung und h beschreiben
