Fastest way to convert a byte of integer into a list

bsneddon bsneddon at yahoo.com
Thu Jul 12 21:13:24 EDT 2007


On Jul 12, 8:49 pm, John Machin <sjmac... at lexicon.net> wrote:
> On Jul 13, 10:28 am, Paul Rubin <http://phr...@NOSPAM.invalid> wrote:
>
> > Godzilla <godzillais... at gmail.com> writes:
> > > > num = 255
> > > > numlist = [num >> i & 1 for i in range(8)]
>
> > > Thanks matimus! I will look into it...
>
> > numlist = lookup_table[num]
>
> > where lookup_table is a precomputed list of lists.
>
> Ummm ... didn't the OP say he had 32-bit numbers???

List comprehension would be faster, lookup would be even faster but
would have to generate list or dictionary ahead of time
but this will work on any length int up 2 limit of int does not pad
with zeros on most significant end to word length.


n=input()
l=[]
while(n>0):
 l.append(str(n&1)); n=n>>1

I posted this here http://www.uselesspython.com/download.php?script_id=222
a while back.




More information about the Python-list mailing list