Is there an easier way to express this list slicing?

Paul McGuire ptmcg at austin.rr._bogus_.com
Thu Nov 30 20:37:58 CET 2006


"Paul McGuire" <ptmcg at austin.rr._bogus_.com> wrote in message 
news:MmGbh.10434$Gk5.6762 at tornado.texas.rr.com...
> "John Henry" <john106henry at hotmail.com> wrote in message 
> news:1164913125.509492.54060 at 79g2000cws.googlegroups.com...
snip

Grrrr... that's what I get for not keeping editor and interpreter windows in 
sync.  My post was referencing vars I had defined in the interpreter, but 
which the function had no clue of. !!!  Here's a working version.

-- Paul


def splitUp(src,lens):
    ret = []
    cur = 0
    for length in lens:
        if length is not None:
            ret.append( src[cur:cur+length] )
            cur += length
        else:
            ret.append( src[cur:] )
    return ret

origlist = list("ABCDEFGHIJ")
alist, blist, clist, dlist = splitUp( origlist, (1,1,3,None) )
print alist, blist, clist, dlist





More information about the Python-list mailing list