Bit Operations

John Machin sjmachin at
Wed Nov 28 22:49:56 CET 2007

On Nov 29, 8:05 am, "Gianmaria Iaculo - NVENTA"
<gianma... at> wrote:
> Txs all,
> i wont to respond to who asked why i needed it:
> I'm using python on GSM modules and the informations i have to move goes
> along GPRS/UMTS connections so it's beatiful for me to transfer more
> informations with less space...
> imagine i have to send this simple data....
> 41.232323,12.345678
> i can send it as it's or use the nibble trick and on the receiving station
> 'unlift" the data and rebuild the original information...
> isn'it???

Sorry, but it's not apparent what you propose to do. If each number
has 8 decimal digits of precision (as in your example), you could
possibly get by with a 32-bit floating point number. If it's always 6
decimal places and 0 <= number < 1000, you could pack (number *
1000000) into a 32-bit integer. For the above two options, check out
the struct module. OTOH, maybe it's "packed decimal" that you mean --
try Googling that phrase and see if it matches your intentions. If it
does, and you are concerned with speed, a 100-element dictionary
mapping each byte-pair to a packed byte might be a good idea instead
of the bit bashing:
convert = {
   '78': '\x78',


More information about the Python-list mailing list