Philipp H. Mohr wrote:
> I am trying to xor the byte representation of every char in a string with
> its predecessor. But I don't know how to convert a char into its byte
> representation. 
ord('a') == 97; chr(97) == 'a'; "ord" gives you the value of the byte.

> e.g. everything between $ and * needs to be xor:
>       $GPGSV,3,1,10,06,79,187,39,30,59,098,40,25,51,287,00,05,25,103,44*
> to get the checksum.

Probably you want a byte-array here, rather than going char-by-char.
Try:
     import array
     base = ('$GPGSV,3,1,10,06,79,187,39,30,59,098,'
             '40,25,51,287,00,05,25,103,44*')
     bytes = array.array('b', base[1 : -1])
     for i in reversed(range(len(bytes))):
        bytes[i] ^= bytes[i-1]
     result = bytes.tostring()

--Scott David Daniels
[EMAIL PROTECTED]
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to