Seite 1 von 1

Spezielles Zeichen erkennen

Verfasst: Sonntag 8. Dezember 2013, 11:18
von DeadDealer
Hi,

ich schreibe grad an einem Interpreter für spezielle Maschinendaten in
Python 3. In den exportierten Dateien finden sich ein oder mehrere
dieser Steuerzeichen (siehe Bild, Zeile 25).

Bild

Wie Prüfe ich in Python auf das Vorhandensein dieses speziellen
Zeichens? Wenn ich Notepad++ korrekt verstehe, handelt es ich um ein
ASCII-Zeichen mit dem Wert 255 (oder als Hex 0xFF).
In der Doku und bei Google finde ich meist nur Hinweise, wie man Strings
in Dezimal- oder Hexadezimalwerte umwandelt, aber bis jetzt noch nichts
passendes für das Vergleichen dieser speziellen Zeichen.

Re: Spezielles Zeichen erkennen

Verfasst: Sonntag 8. Dezember 2013, 12:03
von DeadDealer
Hallo nochmal

Die Frage hat sich geklärt. Hatte die Ausgabe von Notepad++ falsch interpretiert. Das ist kein 0xFF, sondern das Steuerzeichen Form Feed :oops:

mit

Code: Alles auswählen

if "\f" in zeile:
klappt das auswerten jetzt wunderbar ;)

Re: Spezielles Zeichen erkennen

Verfasst: Sonntag 8. Dezember 2013, 12:08
von Hellstorm
Ich habe das nicht ausprobiert, aber wäre das nicht mit einem Byte-String (oder wie man das nennt) möglich? Also wenn du die Datei mit dem Flag "rb" öffnest, wirst du ja die „rohen“ Bytes zurückbekommen. Da könntest du dann vergleichen.

Dann könntest du mit b"\xff" vergleichen.


Edit: Ja, stimmt :D Habe mich auch gewundert, weil ASCII ja nur 128 Zeichen hat. Und an Stelle 255 würde bei ISO-8859-1 der Buchstabe Ÿÿ stehen.