[Python-Dev] Adding an rslice() builtin? (original) (raw)

David Hopwood david.nospam.hopwood at blueyonder.co.uk
Tue Aug 29 18:44:40 CEST 2006


Nick Coghlan wrote:

A discussion on the py3k list reminded me that translating a forward slice into a reversed slice is significantly less than obvious to many people. Not only do you have to negate the step value and swap the start and stop values, but you also need to subtract one from each of the step values, and ensure the new start value was actually in the original slice:

reversed(seq[start:stop:step]) becomes seq[(stop-1)%abs(step):start-1:-step] An rslice builtin would make the latter version significantly easier to read: seq[rslice(start, stop, step)]

Or slice.reversed().

-- David Hopwood <david.nospam.hopwood at blueyonder.co.uk>



More information about the Python-Dev mailing list