Ich mag letzt n bisschen Zahl erhalten, zum Beispiel:Wie komme ich n Bit für Bit?
num = 0b111111111
# if I want to get last 8 bits, it will be 0b11111111
# if I want to get last 2 bits, it will be 0b11
Ich dachte, dies in Ordnung sein kann:
bits = 1 << n
little = num & (~bits)
aber das ist falsch, wenn n = 8, es 0b110111111
bekommen
Sie können keinen richtigen Wert erhalten, wenn Sie keine feste Länge ('num') haben, versuchen Sie:' new_num = bin (int (num)) [2:] .zfill (32) 'für 32-Bit-Zahlen (ohne Vorzeichen). Jetzt kann mit der Nummer gespielt werden: 'print new_num [-15: -3]' gleich '000000111111' (oder umgekehrt für positiven Index) – dsgdfg