list的错误点与list复习

a=[1,2,3,4,5,6,7,8,9]
a[1:3]="abcde"
print(a)

列表切片修改,如果步长是1,元素个数不必匹配,全部迭代添加,切片之后往后移

上述代码结果[1, 'a', 'b', 'c', 'd', 'e', 4, 5, 6, 7, 8, 9]

如果步长不是1,元素个数必须匹配

a=[1,2,3,4,5,6,7,8,9]
a[1::2]="abcde"
print(a)
#ValueError: attempt to assign sequence of size 5 to extended slice of size 4

list 复习

list的增删改查:(返回None就是什么都不返回)

增:

append():在屁股尾巴追加,返回None

insert(索引,要插入的数据):给定两个参数,在指定位置插入数据,返回None

删:

pop():弹出尾部数据,返回弹出的数据

pop(索引):弹出指定位置的数据,返回弹出的数据

remove(指定数据):移除指定数据,返回None

clear():清空列表,返回None

del :删除指定位置数据或者切片数据

改:

索引修改:

a=[1,2,3,4,5,6,7,8,9]
a[0]="123","234"
print(a)

指定位置改为指定数据,

上述代码结果:[('123', '234'), 2, 3, 4, 5, 6, 7, 8, 9]

切片修改:

指定数据为可迭代对象,一个个添加

li = ["windows", "Ubuntu", "CenOS", "Red Hat"]
li[0:2] = ["周杰伦","周润发","麻花藤"] #可迭代对象
print(li)
li[0:1]="刘德华"
print(li)
print(li[0:3:2])
li[3:1:-1] = "麻花藤" #如果你的步长不是1, 元素个数必须要匹配
print(li)

结果

['周杰伦', '周润发', '麻花藤', 'CenOS', 'Red Hat']

['刘', '德', '华', '周润发', '麻花藤', 'CenOS', 'Red Hat']

ValueError: attempt to assign sequence of size 3 to extended slice of size 2

查询:

for循环查询

list的其他常见操作:

count(指定元素):返回指定元素的个数

sort():升序排列

sort(reverse=True):降序排列

中文尽量不要排序,没有意义

reverse():翻转

猜你喜欢

转载自www.cnblogs.com/zxmbky/p/9179395.html
今日推荐