On Wed, Apr 24, 2013 at 2:23 PM, sparkle Plenty <sparkle.plenty12481...@gmail.com> wrote: > I will have an unknown number of instances, each of which consists of 3 > numeric values. I tried packing each instance using struct.pack, then > converting to a tuple, then concatenating. This ran, but introduced > errors: in some instances, high order truncation of a leading zero in the > first of the 3 values. This throws off the position of all data that > follows. Error messages and error code are dependent on which technique is > being tried. The most recent ones are: > TypeError: can't concat bytes to str > TypeError: Can't convert 'tuple' object to str implicitly
If it's simply a matter of packing a number to a fixed number of bytes, why not use the to_bytes method of a 3.x int? >>> b''.join(x.to_bytes(4, 'big') for x in [0x8badf00d, 0xd15ea5ed, 0xdeadd00d]) b'\x8b\xad\xf0\r\xd1^\xa5\xed\xde\xad\xd0\r' _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor