在切片运算中,步长为正,表示从左至右,按照索引值与起始位置索引之差可以被步长整除的规律取值;当步长为负,则表示从右至左,按照按照索引值与起始位置索引之差可以被步长整除的规律取值。
根据这个特性,我们可以很方便对某个序列进行倒序取值,这个方法比reverse方法更方便,且适用于没有reverse方法的字符串和元组。
>>> a=[1,2,3,4,5,6,7] >>> b=(1,2,3,4,5,6,7) >>> c='Let me show you a little thing' >>> a[::-1] [7, 6, 5, 4, 3, 2, 1] >>> b[::-1] (7, 6, 5, 4, 3, 2, 1) >>> c[::-1] 'gniht elttil a uoy wohs em teL' >>> a [1, 2, 3, 4, 5, 6, 7] >>> b (1, 2, 3, 4, 5, 6, 7) >>> c 'Let me show you a little thing' >>> a.reverse() >>> a [7, 6, 5, 4, 3, 2, 1]
相对reverse而言,切片的方法不会改变列表的结构,所以这是在实际应用中比较有用的一个技巧。