Frage

Ich möchte in der Lage sein, eine Bilddatei zu öffnen und zusätzliche die Hexadezimalwerte Byte-für-Byte. Ich habe keine Ahnung, wie dies zu tun und „Python-Byte-Bearbeitung“ und „Python Byte-Array“ googeln mit irgendetwas nicht kommen, überraschend. Kann mir jemand Punkt in Richtung der Bibliothek i verwenden müssen, i spezifische Methoden können Google oder Tutorials / guides?

War es hilfreich?

Lösung

Python-Standardbibliothek hat mmap-Modul, das verwendet werden kann, genau dies zu tun. Werfen Sie einen Blick auf der Dokumentation für weitere Informationen.

Andere Tipps

Je nachdem, was Sie tun möchten, könnte es genug sein, um öffnen Sie die Datei in Binär Modus und lesen die Daten mit der normalen Datei Funktionen:

# load it
with open("somefile", 'rb') as f:
    data = f.read()

# do something with data
data.reverse()

# save it
with open("somefile.new", 'wb') as f:
    f.write(data)

Python schert sich nicht wirklich, wenn die data Zeichenfolge „binäre“ oder „text“ Daten. Wenn Sie nur einfache Änderungen in eine Datei von angemessener Größe zu tun, wollen dies ist wahrscheinlich gut genug.

Der Hachoir Framework ist eine Reihe von Python-Bibliothek und Tools zu analysieren und zu bearbeiten Binärdateien:

http://pypi.python.org/pypi/hachoir-core

Es verfügt über Kenntnisse in gängigen Dateitypen, so könnte dies genau das, was Sie brauchen.

Schauen Sie sich die stuct Modul.

  

Dieses Modul führt Konvertierungen zwischen Python-Werte und C structs dargestellt als Python-Strings. Es verwendet Formatstrings (siehe unten) als kompakte Beschreibungen der Lay-out des C structs und die beabsichtigten Umwandlung in / aus Python-Werten. Dies kann im Umgang mit binären Daten in Dateien oder von Netzwerkverbindungen gespeichert werden, unter anderen Quellen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top