On Dec 6, 6:01 pm, "Craig" <[EMAIL PROTECTED]> wrote: > Thanks so much for the response. I have an array of individual bytes > which will eventually make up a binary bitmap image that is loaded onto > an LCD screen (1 = black dot, 0 = white dot). At the moment each byte > is reversed to what it should be (completely reverse the bit order): > e.g 00111101 should be 10111100, 11001100 should be 00110011, etc. It > is not an int problem as such, it is more a bit level swap if you get > what I mean. If you could help that would be great.
Yet another solution: def flipbits(x): """reverse bits in a byte""" x1 = x << 4 | x >> 4 x2 = (x1 & 51) << 2 | (x1 & 204) >> 2 return (x2 & 85) << 1 | (x2 & 170) >> 1 The idea is to first swap the two nybbles, then swap bits 0, 1, 5, 6 with 2, 3, 6, 7 respectively, and finally swap bits 0, 2, 4, 6 with bits 1, 3, 5, 7 respectively. Mark -- http://mail.python.org/mailman/listinfo/python-list