Inhaltsverzeichnis
Binärdateien lesen
Beispiel
Ausgabe
In Binärdatei schreiben
Heim Backend-Entwicklung Python-Tutorial Wie lese (oder schreibe) ich Binärdaten in Python?

Wie lese (oder schreibe) ich Binärdaten in Python?

Sep 03, 2023 am 08:57 AM
io bytes Binärdaten lesen (lesen): Datei Binärdaten schreiben (schreiben): Datei

Um Binärdateien zu lesen oder zu schreiben, müssen Sie zunächst die verschiedenen Dateimodi von Binärdateien in Python verstehen -

Modus Beschreibung
rb Öffnen Sie eine Datei im schreibgeschützten Binärformat. Der Dateizeiger befindet sich am Anfang der Datei. Dies ist der Standardmodus.
rb+ Öffnen Sie eine Datei im Binärformat zum Lesen und Schreiben. Der Dateizeiger wird am Anfang der Datei platziert.
wb Öffnen Sie nur Dateien, die im Binärformat geschrieben sind. Überschreibt die Datei, falls vorhanden. Wenn die Datei nicht existiert, wird eine neue Datei zum Schreiben erstellt.
wb+ Öffnen Sie eine Datei im Binärformat zum Schreiben und Lesen. Wenn die Datei vorhanden ist, wird die vorhandene Datei überschrieben. Wenn die Datei nicht vorhanden ist, wird eine neue Datei zum Lesen und Schreiben erstellt.
ab Öffnen Sie eine Datei zum Anhängen im Binärformat. Wenn die Datei vorhanden ist, befindet sich der Dateizeiger am Ende der Datei. Das heißt, die Datei befindet sich im Anhängemodus. Wenn die Datei nicht existiert, wird eine neue Datei zum Schreiben erstellt.
ab+ Öffnen Sie Dateien zum Anhängen und Lesen im Binärformat. Wenn die Datei vorhanden ist, befindet sich der Dateizeiger am Ende der Datei. Die Datei wird im Anhängemodus geöffnet. Wenn die Datei nicht existiert, wird eine neue Datei zum Lesen und Schreiben erstellt.

Binärdateien lesen

Angenommen, wir haben eine Binärdatei. Wir können es mit der Methode read() lesen. Zuerst öffnen wir die Binärdatei im rb-Modus der open()-Methode. Wir haben die folgenden Quelldateien im Laufwerk D: -

Wie lese (oder schreibe) ich Binärdaten in Python?

Beispiel

Sehen wir uns den vollständigen Code an

# Open a binary file
f = open('D:\PythonLogo.png', 'rb')

# Read lines
data = f.read()

# Display the data
print(data)
Nach dem Login kopieren

Ausgabe

Die Binärdatei ist nicht lesbar und der Inhalt wird nicht erkannt. Die tatsächliche Leistung ist größer. Nachfolgend zeigen wir nur einen Teil davon.

b'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x04\xb0\x00\x00\x04\xb0\x08\x06\x00\x00\x00
\xeb!\xb3\xcf\x00\x00\x00\x04gAMA\x00\x00\xb1\x8f\x0b\xfca\x05\x00\x00\x00
cHRM\x00\x00z&\x00\x00\x80\x84\x00\x00\xfa\x00\x00\x00\x80\xe8\x00\x00u0\x00\x00\xea`\x0
0\x00:\x98\x00\x00\x17p\x9c\xbaQ<\x00\x00\x00\x06bKGD\x00\xff\x00\xff\x00\xff\xa0\xbd\xa7\x
93\x00\x00\x00\x07tIME\x07\xe1\x08\n\x07\x16\x07\xc9\xb2\xff\xd3\x00\x00\x80\x00IDATx\xda\
xec\x9dw\xbc]e\x95\xf7\x7f\xcf>\xe7\xa6\x91@\xe8\xc5\x02\xa2\x88\x14q0B\x12\xc0\x99\x00!\x
88(\x02\x9a\x8c\x85"\xea\x80b\xc5\x02\xa1\xf8z\xa78\x8aJ\x13EeF\x1d\xdb\x94\x80@\x08\xea\x
a0\x8c\xe0\x0c\x98\x10`\x94\x92\xd0D@,#\x88\xd4\x90r\xef\xd9\xeb\xfd#\x01\x02i\xe7\x9e\xb3
\xcb\xf3\xac\xfd\xfd~>\xef;
.
.
.
\xcdn\xd2d\xb1Q\xdf\xfa\xe9\x8d|\x8f\x14\x00\x00\x00\xb4\t\x02\x0b\x00\x00\x00\xe0Q\x98\xa
9\xd0\xd5\xc7\x1c$Izp\xee>\x9a\xd8\xfa\x98\x1d\xffdr\x7f\x153\x8f\xfa\xf8\xa3\xcdQJ\x07\xec\x
e5\xc8\xf5X\x95\x96\x1eu\n\xdb\xac\xa4-
{\xf9{\xdbe\xf6\xc0#\xfe\xa7\t\xdd\xaf\xed\x9a\xd9\xd1\xf5\xe4\x83\xdawf\xc7w>m\xdb\xbc5-
X\xff
\xb3\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd02\xff?\xca\x9f\x86X\x17m\x83=\
x00\x00\x00%tEXtdate:create\x002017-08-
10T07:22:07+00:00u\xea\xe6c\x00\x00\x00%tEXtdate:modify\x002017-08-
10T07:22:07+00:00\x04\xb7^\xdf\x00\x00\x00\x00IEND\xaeB`\x82'
Nach dem Login kopieren

In Binärdatei schreiben

Der

wb-Modus der open()-Methode wird verwendet, um die Datei im Schreibformat zu öffnen.

Achtung – Die Binärdatei ist nicht lesbar und der Inhalt wird nicht erkannt

Schauen wir uns das vollständige Beispiel an. Hier wird die Datei im E-Laufwerk mit dem Namen

gespeichert

Beispiel

MyDemoBinary.bin -

# Open a file in binary format for writing
f = open("E:\MyDemoBinary.bin","wb")

# Elements to be added to the binary file
a = [100, 200, 300]

# Convert the integer elements to a bytearray
myArr = bytearray(a)

# The byte representation ius now written to the file
f.write(myArr)
f.close()
Nach dem Login kopieren

Ausgabe

Nachdem die Datei ausgeführt wurde, wird sie im festgelegten Pfad angezeigt, d. h. im Laufwerk E –

Wie lese (oder schreibe) ich Binärdaten in Python?

Das obige ist der detaillierte Inhalt vonWie lese (oder schreibe) ich Binärdaten in 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 KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

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)

Wie behebe ich den Fehler „undefiniert: io.ReadAll' in Golang? Wie behebe ich den Fehler „undefiniert: io.ReadAll' in Golang? Jun 25, 2023 am 10:01 AM

Während des Entwicklungsprozesses mit Golang stoßen wir häufig auf Fehler. Einer davon ist „undefiniert:io.ReadAll“. Dieser Fehler wird hauptsächlich durch die Verwendung veralteter Methoden verursacht. In diesem Artikel wird erläutert, wie Sie diesen Fehler beheben können. Schauen wir uns zunächst an, warum dieser Fehler auftritt. Vor golang1.15 gab es im io-Paket keine ReadAll-Methode. Wenn wir diese Methode verwenden, fordert der Compiler „undefiniert:io.Re“ auf

Manuelle Aktivierungsmethoden und Tutorials für HWID V 2.2 Manuelle Aktivierungsmethoden und Tutorials für HWID V 2.2 Oct 20, 2023 pm 07:17 PM

Dies ist für Benutzer gedacht, die eine manuelle Aktivierung durchführen möchten. Wenn Sie hierfür Hilfe bei einem Tool benötigen, schauen Sie hier nach. Wir können den manuellen Aktivierungsprozess in zwei Teile unterteilen. 1- Stellen Sie anhand der vorgefertigten Batchdatei sicher, dass das Internet aktiviert ist. Öffnen Sie Windows Powershell als Administrator und geben Sie Folgendes ein, um die Befehle in der angegebenen Reihenfolge aufzulisten. Geben Sie den Schlüssel ein (ersetzen Sie ihn durch den Schlüssel aus der Liste oben). Verwenden Sie den folgenden Befehl: &lt;key&gt;slmgr/ipk&lt;key&gt; Laden Sie das Universalticket hier herunter und extrahieren Sie die heruntergeladene Datei. Geben Sie nun den folgenden Code in Powershell ein (Get-ItemProper

Wie behebe ich den Fehler „undefiniert: bytes.Split' in Golang? Wie behebe ich den Fehler „undefiniert: bytes.Split' in Golang? Jun 25, 2023 pm 02:02 PM

In der Go-Sprache ist das Byte-Paket ein Paket zum Bearbeiten von Byte-Typen und enthält viele nützliche Methoden, wie z. B. die Split()-Methode. Bei Verwendung der Split()-Methode kann jedoch der Fehler „undefiniert: bytes.Split“ auftreten. Dieser Fehler wird normalerweise durch inkompatible Go-Versionen oder das Fehlen notwendiger abhängiger Bibliotheken verursacht. In diesem Artikel werden einige Methoden zur Behebung dieses Fehlers vorgestellt. Methode 1: Aktualisieren Sie die Go-Version wie folgt

Was bedeutet Linux IO? Was bedeutet Linux IO? Mar 24, 2023 am 09:43 AM

Linux io bezieht sich auf eine Dateioperation. Unter Linux besteht eine Datei aus einer Reihe von Binärströmen. Während des Informationsaustauschs führen wir alle Datensende- und -empfangsvorgänge für diese Ströme aus. Diese Vorgänge werden als E/A-Vorgänge bezeichnet. Da Linux einen virtuellen Speichermechanismus verwendet, muss der Kernel über Systemaufrufe angefordert werden, um E/A-Vorgänge abzuschließen.

Praktischer Kampf: Festplatten-Io-Lese- und Schreibtest unter Linux Praktischer Kampf: Festplatten-Io-Lese- und Schreibtest unter Linux Feb 19, 2024 pm 03:40 PM

Concept fio, auch bekannt als FlexibleIOTester, ist eine von JensAxboe geschriebene Anwendung. Jens ist der Betreuer von blockIOsubsystem im LinuxKernel. FIO ist ein Tool zum Testen der Netzwerkdateisystem- und Festplattenleistung. Es wird häufig zur Überprüfung von Maschinenmodellen und zum Vergleich der Dateisystemleistung verwendet. Es sendet automatisch FIO-Befehle an eine Liste von Clustermaschinen und sammelt IOPS für kleine Dateien und Durchsatzdaten für große Dateien. rw=[mode]rwmixwrite=30 Im gemischten Lese- und Schreibmodus macht das Schreiben 30 % aus

Verwenden Sie die Funktion io/ioutil.WriteFile, um eine Zeichenfolge in eine Datei zu schreiben und Dateiberechtigungen und Einrückungsformat festzulegen Verwenden Sie die Funktion io/ioutil.WriteFile, um eine Zeichenfolge in eine Datei zu schreiben und Dateiberechtigungen und Einrückungsformat festzulegen Jul 24, 2023 pm 06:21 PM

Verwenden Sie die Funktion io/ioutil.WriteFile, um eine Zeichenfolge in eine Datei zu schreiben und die Dateiberechtigungen und das Einrückungsformat festzulegen. In der Go-Sprache können Sie mithilfe der Funktion WriteFile im Paket io/ioutil problemlos eine Zeichenfolge in eine Datei schreiben. Gleichzeitig können wir auch Dateiberechtigungen und Einrückungsformate festlegen, um unterschiedliche Anforderungen zu erfüllen. Hier ist ein Beispielcode, der zeigt, wie Sie mit der WriteFile-Funktion in eine Datei schreiben und Berechtigungen und Einrückungsformat festlegen: packagemainim

Wie behebe ich den Fehler „undefiniert: io.TeeReader' in Golang? Wie behebe ich den Fehler „undefiniert: io.TeeReader' in Golang? Jun 25, 2023 am 09:51 AM

Bei der Entwicklung mit Golang stoßen wir häufig auf verschiedene Probleme und Fehlermeldungen. Eines der häufigsten Probleme ist der Fehler „undefiniert:io.TeeReader“. Dieser Fehler tritt normalerweise beim Kompilieren des Programms auf und kann manchmal frustrierend sein. In diesem Artikel erfahren Sie, wie Sie dieses Problem lösen, damit Sie die Golang-Entwicklungsarbeit reibungslos durchführen können. Schauen wir uns zunächst an, was genau dieser Fehler bedeutet. wenn wir es verwenden

Was sind die Lese- und Schreibvorgänge bei der Erstellung von Java IO-Streams? Was sind die Lese- und Schreibvorgänge bei der Erstellung von Java IO-Streams? May 14, 2023 am 08:22 AM

Das Konzept des E/A-Streams kann zunächst als die Übertragung von Daten in: 1234567 verstanden werden und diese von der Hallo-Datei in die Haha-Datei übertragen Das heißt, es handelt sich um eine Byte-für-Byte-Übertragung. Dies ist der allgemeine Prozess, bei dem der IO-Stream jedes Byte lesen kann Art der Datei. Zum Beispiel: Textdateien, Bilder, MP3-Songs, Videos usw. Da der IO-Stream Byte für Byte gelesen wird, müssen wir die Byte-Einzelbyte-Variable verwenden, um die Länge zu erhalten. Wenn Sie zu viel Inhalt erhalten, müssen Sie das entsprechende Array verwenden. Die dem IO-Stream entsprechende Methode muss in allen IO-Stream-Methoden geschrieben werden.

See all articles