Inhaltsverzeichnis
Methode zur Verwendung
Methode 1: Verwendung des Binascii-Moduls
Algorithmus (Schritte)
Beispiel
Ausgabe
Methode 2: Base64-Modul verwenden
Fazit
Heim Backend-Entwicklung Python-Tutorial Dekodierung und Kodierung von Hexadezimalzahlen mit Python

Dekodierung und Kodierung von Hexadezimalzahlen mit Python

Aug 19, 2023 pm 02:09 PM
python 编码 十六进制 解码

Dekodierung und Kodierung von Hexadezimalzahlen mit Python

In diesem Artikel erfahren wir, wie man Hexadezimalzahlen mit Python dekodiert und kodiert.

Methode zur Verwendung

  • Verwenden Sie das Binascii-Modul

  • Base64-Modul verwenden

Methode 1: Verwendung des Binascii-Moduls

Im Binascii-Modul gibt es mehrere Methoden zum Konvertieren zwischen binären und verschiedenen ASCII-codierten Binärdarstellungen.

Wenn Sie nur eine rohe Folge hexadezimaler Ziffern kodieren oder dekodieren müssen, können Sie das binascii-Modul verwenden.

Algorithmus (Schritte)

Unten sind die Algorithmen/Schritte zum Ausführen der erforderlichen Aufgabe aufgeführt. −

  • Verwenden Sie das Schlüsselwort import, um das Modul binascii zu importieren.

  • Erstellen Sie eine Variable zum Speichern der Eingabebyte-Zeichenfolge.

  • Kodieren Sie die Eingabebytezeichenfolge mit der Funktion b2a_hex() des Moduls binascii in eine Hexadezimalzahl.

  • Drucken Sie die resultierende Hexadezimalzahl der Eingabebytezeichenfolge.

  • Verwenden Sie die Funktion a2b_hex() des Moduls binascii, um die obige Hexadezimalzahl in eine Bytefolge zu dekodieren.

Die chinesische Übersetzung von

Beispiel

lautet:

Beispiel

Das folgende Programm verwendet die Funktionen b2a_hex() und a2b_hex(), um eine Eingabebytezeichenfolge in eine Hexadezimalzahl zu kodieren und sie wieder in eine Bytezeichenfolge zu dekodieren.

# importing binascii module
import binascii

# input byte string 
inputByteString = b'tutorialspoint python'

# encoding input byte string into hexadecimal digits
hexdigits = binascii.b2a_hex(inputByteString)

# printing the resultant hexadecimal digits of the byte string 
print(hexdigits)

# decoding hexadecimal digits back into byte string 
print(binascii.a2b_hex(hexdigits))
Nach dem Login kopieren

Ausgabe

Beim Ausführen des obigen Programms wird die folgende Ausgabe generiert -

b'7475746f7269616c73706f696e7420707974686f6e'
b'tutorialspoint python'
Nach dem Login kopieren
Nach dem Login kopieren

Methode 2: Base64-Modul verwenden

Das Modul

base64 verfügt ebenfalls über eine ähnliche Funktionalität. Es kann auch rohe Hexadezimalzahlen kodieren oder dekodieren.

Algorithmus (Schritte)

Unten sind die Algorithmen/Schritte zum Ausführen der erforderlichen Aufgabe aufgeführt. −

  • Verwenden Sie das Schlüsselwort import, um das Modul base64 zu importieren.

  • Erstellen Sie eine Variable zum Speichern der Eingabebyte-Zeichenfolge.

  • Kodieren Sie die Eingabebytezeichenfolge mit der Funktion b16encode() des Moduls base64 in hexadezimale Ziffern (Hexdigits).

  • Drucken Sie die resultierende Hexzahl der Eingabebytezeichenfolge aus.

  • Verwenden Sie die Funktion b16decode() des Moduls base64, um die obige Hexadezimalzahl in eine Bytezeichenfolge zu dekodieren und auszudrucken.

Die chinesische Übersetzung von

Beispiel

lautet:

Beispiel

Das folgende Programm kodiert eine Eingabe-Byte-Zeichenfolge in eine Hexadezimalzahl und dekodiert sie mithilfe der Funktionen b16encode() und b16decode() wieder in eine Byte-Zeichenfolge -

# importing base64 module
import base64

# input byte string 
inputByteString = b'tutorialspoint python'

# encoding input byte byte string into hexadecimal digits
# using b16encode() function of base64 module
hexdigits = base64.b16encode(inputByteString)

# printing the resultant hexadecimal digits of the byte string 
print(hexdigits)

# decoding hexadecimal digits back into byte string 
print(base64.b16decode(hexdigits))
Nach dem Login kopieren

Ausgabe

Beim Ausführen des obigen Programms wird die folgende Ausgabe generiert -

b'7475746f7269616c73706f696e7420707974686f6e'
b'tutorialspoint python'
Nach dem Login kopieren
Nach dem Login kopieren

Die Konvertierung in und von Hexadezimalzahlen ist mit den beschriebenen Funktionen in den meisten Fällen einfach. Kofferfaltung ist der größte Unterschied zwischen den beiden Methoden. Im Vergleich zu Operationen in binascii können die Funktionen base64.b16decode() und base64.b16encode() nur Großbuchstaben hexadezimale Buchstaben verarbeiten.

Es ist auch wichtig zu bedenken, dass die Ausgabe der Kodierungsfunktion immer eine Bytefolge ist. Möglicherweise müssen Sie zusätzliche Dekodierungsschritte einschließen, um die Ausgabe in Unicode zu erzwingen.

Die chinesische Übersetzung von

Beispiel

lautet:

Beispiel

Das folgende Programm verwendet die Dekodierfunktion, um Hexadezimalzahlen in das ASCII-Format zu dekodieren:

# importing base64 module
import base64
 
# input byte string 
inputByteString = b'tutorialspoint python'
 
# encoding input byte byte string into hexadecimal digits
# using b16encode() function of base64 module
hexdigits = base64.b16encode(inputByteString)
 
# printing the resultant hexadecimal digitsof the byte string 
print(hexdigits)
 
# decoding hexadecimal digits in ASCII format using the decode() function
print(hexdigits.decode('ascii'))
Nach dem Login kopieren

Ausgabe

Beim Ausführen des obigen Programms wird die folgende Ausgabe generiert -

b'7475746F7269616C73706F696E7420707974686F6E'
7475746F7269616C73706F696E7420707974686F6E
Nach dem Login kopieren
Die Methoden

b16decode() und a2b_hex() akzeptieren Bytes oder Unicode-Text als Eingabe beim Dekodieren von Hexadezimalzahlen. Diese Zeichenfolgen können jedoch nur hexadezimale Ziffern enthalten, die ASCII-codiert wurden.

Fazit

In diesem Artikel haben wir gelernt, wie man die hexadezimale Darstellung einer Zahl mit Python dekodiert und kodiert. Wir haben auch gelernt, wie man mit der Methode decode() die ASCII-Darstellung einer Hexadezimalzahl dekodiert.

Das obige ist der detaillierte Inhalt vonDekodierung und Kodierung von Hexadezimalzahlen mit Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße Artikel -Tags

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was sind die Vor- und Nachteile des Templatings? Was sind die Vor- und Nachteile des Templatings? May 08, 2024 pm 03:51 PM

Was sind die Vor- und Nachteile des Templatings?

So laden Sie Deepseek Xiaomi herunter So laden Sie Deepseek Xiaomi herunter Feb 19, 2025 pm 05:27 PM

So laden Sie Deepseek Xiaomi herunter

Google AI kündigt Gemini 1.5 Pro und Gemma 2 für Entwickler an Google AI kündigt Gemini 1.5 Pro und Gemma 2 für Entwickler an Jul 01, 2024 am 07:22 AM

Google AI kündigt Gemini 1.5 Pro und Gemma 2 für Entwickler an

Für nur 250 US-Dollar zeigt Ihnen der technische Leiter von Hugging Face Schritt für Schritt, wie Sie Llama 3 verfeinern Für nur 250 US-Dollar zeigt Ihnen der technische Leiter von Hugging Face Schritt für Schritt, wie Sie Llama 3 verfeinern May 06, 2024 pm 03:52 PM

Für nur 250 US-Dollar zeigt Ihnen der technische Leiter von Hugging Face Schritt für Schritt, wie Sie Llama 3 verfeinern

Teilen Sie mehrere .NET-Open-Source-KI- und LLM-bezogene Projekt-Frameworks Teilen Sie mehrere .NET-Open-Source-KI- und LLM-bezogene Projekt-Frameworks May 06, 2024 pm 04:43 PM

Teilen Sie mehrere .NET-Open-Source-KI- und LLM-bezogene Projekt-Frameworks

Wie fragst du ihn Deepseek? Wie fragst du ihn Deepseek? Feb 19, 2025 pm 04:42 PM

Wie fragst du ihn Deepseek?

So speichern Sie die Evaluierungsfunktion So speichern Sie die Evaluierungsfunktion May 07, 2024 am 01:09 AM

So speichern Sie die Evaluierungsfunktion

So suchen Sie Deepseek So suchen Sie Deepseek Feb 19, 2025 pm 05:18 PM

So suchen Sie Deepseek

See all articles