In article <[EMAIL PROTECTED]>,
Paddy <[EMAIL PROTECTED]> wrote:
>=== interv2 ===
>>>> def interv2(inlist):
>...    for i,val in enumerate(inlist):
>...            if i==0:
>...                    tmp = val
>...            elif val != valinc:
>...                    yield [tmp, valinc]
>...                     tmp = val
>...            valinc = val+1
>...    yield [tmp, valinc]
>...
>>>> list(interv2(inlist))
>[[3, 4], [6, 9], [12, 14], [15, 16]]
>
>=== END interv2 ===

This doesn't actually run, changing it to make it do so:

def interv2(inlist):
    tmp = valinc = 0
    for i,val in enumerate(inlist):
        if i==0:
            tmp = val
            valinc = val + 1
        elif val != valinc:
            yield [tmp, valinc]
            tmp = val
            valinc = val+1
    yield [tmp, valinc]

it now works, but returns [0, 0] when passed an empty list, when it
should return nothing at all





-- 
Jim Segrave           ([EMAIL PROTECTED])

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to