Paul Rubin wrote: > Philippe Martin <[EMAIL PROTECTED]> writes: >> I'm using python to prototype the algo: this will move to C in an >> embedded system where an int has 16 bits - I do not wish to use any >> python library. >> >> l1 = [1,2,3,4,6,7,8] #represents the decimal number 12345678 > > This is untested, but should give you the idea: > > First, convert that list to a decimal digit string: > > s = ''.join(map(str, l1)) > > Then convert the string to an integer: > > n = int(s) # base 10 is the default > > Then convert the integer to a hex digit string: > > h = '%X' % n > > Finally, convert the hex digit string to a list of integer values of the > individual digits: > > vlist = [int(d, 16) for d in h] > > This is the list you want. > > If you prefer, You can do it all in one line: > > vlist = [int(d, 16) for d in ('%X' % int(''.join(map(str, l1))))]
Thanks Paul, I'm just using Python to prototype, so I cannot use any of these great features of the language. Regards, Philippe -- http://mail.python.org/mailman/listinfo/python-list