l[start:stop]
,得到下标在范围内前闭后开区间范围内的元素,为负数时看作负数对应的下标例如:
>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a[-100:5]
[0, 1, 2, 3, 4]
>>> a[5:100]
[5, 6, 7, 8, 9]
>>> a[-100:100]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a[100:1000]
[]
start
比stop
大,则得到空list例如:
>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a[:5]
[0, 1, 2, 3, 4]
>>> a[5:]
[5, 6, 7, 8, 9]
>>> a[100:]
[]
a[start:stop:step]
,从start
对应的位置出发,以step
为步长索引序列,直至越过stop
对应的位置,且不包括stop
本身step
为负数时,访问时逆序的,缺省时依旧是取尽可能大的区间例如:
>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a[5::-1]
[5, 4, 3, 2, 1, 0]
>>> a[:4:-2]
[9, 7, 5]
>>> a[::-1]#得到逆序list
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
#截取数列前三个数
l = [1, 2, 3, 4]
l[0:3] #表示从索引0开始取,到索引3为止,不包括索引3
l[:3] #若从0开始,可以省略
l[1:3] #从索引1开始,取两个元素
l[-2:] #从倒数第二个开始取到结尾
l[-2:-1] #取最后两个
l[:10:2] #表示前10个每两个取一个
l[:] #表示原样复制一个list
#tuple也是list,不过不可变,切片后仍是tuple
(0, 1, 2, 3)[:3] #结果:(0, 1, 2)
#字符串也可以看成list,切片后仍是字符串
‘ABCDEFG‘[::2] #结果‘ACEG‘
原文:https://www.cnblogs.com/Xloading/p/15259848.html