切片适用于列表、元组、字符串、range对象等类型,但作用于列表时功能最强大。可以使用切片来截取列表中的任何部分,得到一个新列表,也可以通过切片来修改和删除列表中部分元素,甚至可以通过切片操作为列表对象增加元素。
ValueError: attempt to assign sequence of size 3 to extended slice of size 2
这个步长只能是1 ,试了好多次其他的数值,都会报错
lst3=[True,False,'hello']
# 在任意位置添加 N 多个元素
print("切片之前的列表",lst)
lst[1:3:1]=lst3
print("切片之后的列表",lst)
切片之前的列表 [10, 90, 20, 30, 100]
切片之后的列表 [10, True, False, 'hello', 30, 100]
lst3=[True,False,'hello']
# 在任意位置添加 N 多个元素
print("切片之前的列表",lst)
lst[1:2:1]=lst3
print("切片之后的列表",lst) #[10, True, False, 'hello'] 从索引i 位置以后全替换
切片之前的列表 [10, 90, 20, 30, 100]
切片之后的列表 [10, True, False, 'hello', 20, 30, 100]
lst3=[True,False,'hello']
# 在任意位置添加 N 多个元素
print("切片之前的列表",lst)
lst[1:1:1]=lst3
print("切片之后的列表",lst)
切片之前的列表 [10, 90, 20, 30, 100]
切片之后的列表 [10, True, False, 'hello', 90, 20, 30, 100]
切片会产生一个新的列表对象
切片可以增加 删除列表中的元素
切片删除至少一个元素
print(lst) #[10, 40, 50]
new_lst=lst[1:2]
print(new_lst) #[40]
使用切片操作,但是不产生新的列表对象,而是删除原来列表的内容
# 原列表为:[10, 40, 50]
lst[1:2]=[] #用空列表接收
print(lst) # [40]
利用切片操作修改列表里面多个值
lst=[10,20,30,40]
lst[1:3]=[300,400,500,600]
print(lst) #[10, 300, 400, 500, 600, 40]