[Python-de] Bits rotieren

mk lopoff at gmx.net
Do Jun 21 00:27:26 UTC 2007


Hallo Python Freunde,

ich hab ein Problem eine Variable so zu definieren das
sie nur wie ein 'char' unter C/C++ agiert.

Ich möchte ein Programm schreiben das einen Text ließt
und jeden Buchstaben alle möglichen Bit-Positionen
anzeigt. Soll heißen ich rotiere die Bits.
Wenn ich das unter Python mache komme ich irgendwann
über 256 und kann das Zeichen nicht mehr mit 'chr()'
anzeigen.

Das rotieren selbst geschieht natürlich nur 7 mal da
es ja nur 8 bits sind die ein zeichen ausmachen.

Hier meine Idee zur Umsetzung:


for h in range(0,7):
    for a in fd_in_file: # Zeile einlesen
        line_len=len(a)
        for b in range(0,line_len): # zeichen
            z=a[b:b+1] # einzeln einlesen
            x=ord(z) # string nach integer
            y= x << 1 # einmal verschieben
            print chr(y) # zeichen anzeigen


Vielen Dank für die Hilfe.