【Python】切片

切片

python的列表、元组和字符串这类序列都支持切片操作,用起来十分方便。
格式如下:
    list[start:stop:step]
含义是:在start和stop之间以step间隔取值。负值意味着反向取值!

list = [1,2,3,4,5,6,7,8]
print(list[3:]) #从三开始取
print(list[:3]) #取前三个

print(list[6::-2])  #从6开始 以-2为间隔反向取值
print(list[::-1])   #反序
print(list[:])      #原序列不变

打印如下:

[4, 5, 6, 7, 8]
[1, 2, 3]

[7, 5, 3, 1]
[8, 7, 6, 5, 4, 3, 2, 1]
[1, 2, 3, 4, 5, 6, 7, 8]

切片赋值

看一组示例:

l = list(range(10))
print(l)

l[2:5] = [30,40]    #index=2~5的值会被[30,40]取代
print(l)

del l[2:5]          #删除index=2~5的值
print(l)

#此表达式中l的长度必须要小于 9
#此表达式中l长度必须要大于  3[index=2] + (2 - 1)[[66,77]的长度为2] * 3 = 6
l[2::3] = [66,77]   #从index=2开始 每隔3个值赋值为[66,77]对应的值
print(l)

打印如下:

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[0, 1, 30, 40, 5, 6, 7, 8, 9]
[0, 1, 6, 7, 8, 9]
[0, 1, 66, 7, 8, 77]

猜你喜欢

转载自blog.csdn.net/gx864102252/article/details/80558886