Python学习-28.Python中的列表切片
在实际的业务过程中,经常有这么一个操作:取一个列表的一部分进行操作,而不影响原来的列表。也就是将原来的列表复制一个部分副本并对其进行操作。
举个完整例子:
1 list = ['a','b','c','d','e']# 声明一个列表。 2 sublist = list[1:3]# 对列表进行切片,取索引为 1 至 3 - 1 的元素,即 b 和 c。 3 print(sublist)# 输出切片,得b c 4 sublist[0] = 'z'# 修改切片 5 print(sublist)# 输出切片,得z c 6 print(list)# 输出原列表,得a b c d e,可见修改切片并不会修改原列表。
可见切片的第一个参数为起始元素的索引,而第二个参数则是结束元素的下一个元素的索引。
另外,切片还支持简写:
list[0:3]和list[:3]效果是相同的。(输出a b c)
而list[3:5]和list[3:]效果是相同的(在此例子中,输出:d e)
即若省略第一个参数则第一个参数为0,而省略第二个参数则为列表的长度。
最后就是切片的一个特殊应用:
1 print(list[:]) 2 print(list.copy())
这两行的效果是等价的。