python:字符串 扩展分片:第三个限制值

X[I:J:K],这表示"索引 X对象中的元素,从偏移为 I直到偏移为3一 1 ,每隔K元素索引 一次"。第 三 个限制一 -K, 默认为 1 ,这也就是通常在一个切片中 从左至右提取每一个元素的原因。 如果你定义了 一个明确的值,那么能够使用第三个限制去跳过某些元素或反向排列它们 的顺序。
例如, X[1:10:2]会取出 X中 ,偏移值 1-9之间,间隔了 一个元素的元素,也就是收集偏 移值1、 3、 5、 7和9之处的元素。如同往常,第一和第二限制值默认为0以及序列的长 度,所以, X[::2]会取出序列 从头到尾、每隔 一 个元素的元素:
>>> S ='abcdefghijklmnop' >>> 5[1:10:2]
'bdfhj'
>>> S[::2]
'acegikmo'
也可以使用负数作为步进。例如,分片 表达式 "hello"[::-1]返回 一个 新的 字符串 “olleh" 一一前两个参数默认值分别为0和序列的长度,就像之前一样,步进 - 1表示分 片将会从右至左进行而不是通常的从左至右。因此,实际效果就是将序列进行反转:
>>> S = 'hello' >>> S[::-1]
'olleh'
通过 一 个负数步进,两个边界的意义实际上进行了反转。也就是说,分片 S[5:1:-1]以
反转的顺序获取从2到5的元素(结果是偏移为5、 4、 3和2的元素)
>>> 5 = 'abcedfg' >>> 5[5:1:-1]
'fdec'
 

原文地址:https://www.cnblogs.com/by170628/p/10636424.html