interleave string

MRAB python at mrabarnett.plus.com
Tue Feb 15 10:00:03 EST 2011


On 15/02/2011 09:53, Andrea Crotti wrote:
> Just a curiosity not a real problem, I want to pass from a string like
>
> xxaabbddee
> to
> xx:aa:bb:dd:ee
>
> so every two characters insert a ":".
> At the moment I have this ugly inliner
>          interleaved = ':'.join(orig[x:x+2] for x in range(0, len(orig), 2))
>
> but also something like this would work
> [''.join((x,y)) for x, y in zip(orig[0::2], orig[1::2])]
>
> any other ideas?

interleaved = "{}{}:{}{}:{}{}:{}{}".format(*orig)



More information about the Python-list mailing list