[Python-Dev] Negative slice steps considered unhealthy (extended slicing for lists) (original) (raw)
Michael Hudson mwh21@cam.ac.uk
01 Aug 2000 07:59:11 +0100
- Previous message: [Python-Dev] Negative slice steps considered unhealthy (extended slicing for lists)
- Next message: [Python-Dev] PEP 203 Augmented Assignment
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
"Fredrik Lundh" <effbot@telia.com> writes:
greg wrote:
> I think there are some big conceptual problems with allowing > negative steps in a slice. wasn't "slices" supposed to work the same way as "ranges"?
The problem is that for slices (& indexes in general) that negative indices have a special interpretation:
range(10,-1,-1) range(10)[:-1]
Personally I don't think it's that bad (you just have to remember to write :: instead of :-1: when you want to step all the way back to the beginning). More serious is what you do with out of range indices - and NumPy is a bit odd with this one, it seems:
l = Numeric.arrayrange(10) l[30::-2] array([0, 8, 6, 4, 2, 0])
What's that initial "0" doing there? Can someone who actually understands NumPy explain this?
Cheers, M.
(PS: PySlice_GetIndices is in practice a bit useless because when it fails it offers no explanation of why! Does any one use this function, or should I submit a patch to make it a bit more helpful (& support longs)?)
-- -Dr. Olin Shivers, Ph.D., Cranberry-Melon School of Cucumber Science -- seen in comp.lang.scheme
- Previous message: [Python-Dev] Negative slice steps considered unhealthy (extended slicing for lists)
- Next message: [Python-Dev] PEP 203 Augmented Assignment
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]