利用python解决问题的过程中,经常会遇到从某个对象中抽取部分值的情况。“切片”操作正是专门用于实现这一目标的有力武器。
理论上,只要条件表达式得当,可以通过单次或多次切片操作实现任意目标值切取。
通过切片,可以对内置的list、str、bytes、tuple等进行切割,切割操作还可以延伸到实现了__getitem__和__setitem__这两个特殊方法的python类上。
完整的切片表达式:
someObject[start_index : end_index : step]
1)start_index:表示起始索引(包含该索引对应值)。该参数省略时,表示从对象“端点”开始取值,至于是从“起点”还是从“终点”开始,则由step参数的正负决定。
step为正从“起点”开始,为负从“终点”开始。
2)end_index:表示终止索引(不包含该索引对应值)。该参数省略时,表示一直取到数据“端点”,至于是到“起点”还是到“终点”,同样由step参数的正负决定。
step为正时直到“终点”,为负时直到“起点”。
3)step:正负数均可,其绝对值大小决定了切取数据时的‘‘步长”,而正负号决定了“切取方向”,正表示“从左往右”取值,负表示“从右往左”取值。
当step省略时,默认为1,即从左往右以步长1取值。
未完待续。。。。。。
原文:https://www.cnblogs.com/yanghh/p/13150503.html