(1)python的[:]
[m:n] 是python的切片(分片),取列表中从m开始到n-1的值,即[m,n),左闭右开的取值原则;
注:列表索引从左往右是从0开始,0,1,2,3,而右往左是从-1开始,-1,-2,-3
如下样例:
a = '123456789'
print(a[:]) # 得123456789
print(a[:3]) # 默认从0开始,取[0,3)得123
print(a[-3:-1]) # 取[-3:-1)得78
注:m < n,负数的时候要小心!!!若m>n,返回的是空值。
(2)python的[::]
a[m::n] 是从a[m]开始,每跳|n|(绝对值)个取一个值,当n为负数时,逆序取值;
n为正的时候,m为空则默认m=0
n为负的时候,m为空则默认m=-1
如下样例
a = '123456789'
print(a[::]) # 得123456789
print(a[::3]) # 默认从0开始,得147
print(a[::-2]) # 默认从-1逆序取值,得97531
print(a[-2::-2]) #从-2逆序取值,得8642
特别注意:
这里的n指的是跳n个数,而不是间隔n个数,就是比如这个a[::3],从a[0]开始,然后跳三个数,234,取第三个数‘4’,所以取1然后到4,再然后到7,>>>记住不是间隔!!!
n正数,顺序取值,左往右;
n负数,逆序取值,右往左。