即:l[2:1]相当于是l[2:2],故取到的分片是空。例如:
>>> l[2:1]
[]
>>> l[5:2]
[]
分片赋值
索引赋值和c语言等是类似的,用一个新对象取代索引处原来的对象。...分片赋值有一些不同,它能够将整个片段给替换掉。注意,分片赋值的应当是一个可迭代对象,即使分片大小是1。...0处插入0
>>> L
[0, 1, 2, 3]
>>> L[1:1] = ['X'] # 在索引1处插入X
>>> L
[0, 'X', 1, 2, 3]
所以,分片操作是相当强大的,它的实际效果可以体现为替换...# 删除末尾的值
>>> L
[1, 2, 3, 4]
>>> L[0:2] = [] # 删除0:2(0,1两个位置处的值)
>>> L
[3, 4]
pop()方法能够返回被删除的值,而使用切片删除并不能...# 修改多个位置处的值
>>> L
['1', '2', '3', 4]
实际上还可以在修改的同时插入值,但是一般不会这么做。