Brian Beck wrote: > Antoon Pardon wrote: >> Will it ever be possible to write things like: >> >> a = 4:9 > > I made a silly recipe to do something like this a while ago, not that > I'd recommend using it. But I also think it wouldn't be too far-fetched > to allow slice creation using a syntax like the above... > > http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/415500 >
Another possibility would be to make the slice type itself sliceable, then you could write things like: >>> a = slice[4:9] >>> a slice(4, 9, None) Sample implementation: >>> class MetaSlice(object): def __getitem__(cls, item): return item def __init__(self, *args, **kw): return super(MetaSlice,self).__init__(self, *args, **kw) >>> class Slice(slice): __metaclass__=MetaSlice >>> Slice[2:3] slice(2, 3, None) >>> Slice[:3] slice(None, 3, None) >>> Slice[:3:-1] slice(None, 3, -1) -- http://mail.python.org/mailman/listinfo/python-list