列表的常用操作
###列表是一种可变的容器型的数据类型 l1 = ['Naruto','Sakurua','Sasukey','wanghw'] #索引 print(l1[0],type(l1[0])) print(l1[1],type(l1[1])) #切片 print(l1[:5],type(l1[:5])) print(l1[0:4:2]) print(l1[-1:-4:-1]) #列表的常用操作——增删改查 '''##增——insert、append、extend''' ###()append——追加 l1.append(['王宏伟',22,'male']) print(l1) ###(2)insert——插入 l1.insert(1,'whw') print(l1) ###(3)extend——迭代追加 l1.extend('Alex') print(l1)# '''删——pop、remove、clear、del''' ###()按照索引去删——pop() ###只有pop()会将被删除的元素返回 ret = l1.pop(0) print('被删除的元素',ret) print(l1) ###(2)按照元素删除——remove() ###如果有同名的元素,则会只删除第一个 l1.append('A') print(l1) l1.remove('A') print(l1) ###(3)清空列表 l3 = [1,2,3,4,5] print(l3) l3.clear() print(l3,type(l3)) ###(4)del—————— ###(4-)按照索引删除 del l1[-2] print(l1) ###(4-2)按照切片(可以加步长)删除 del l1[1:5:2] print(l1) ###(4-3)删除整个列表 l4 = [1,2,3] print(l4) del l4 # print(l4)# 报错:NameError: name 'l4' is not defined '''''''#改—— l1[0]=* l1[:3]="wanghw" l1[:4:2]=222,333 ''' l1[0] = '男神' print(l1) l1[:3] = 'WhwEa' print(l1) ##按照步长添加,元素的个数必须与索引个数一一对应 l1[:4:2] = 222,333 print(l1) #查 ''' ###(1)按照索引 ###(2)按照切片+步长 ###(3)for循环 ''' #其他方法:len、count、index、sort、reverse ###len——获取列表长度 print(len(l1)) ###count——计算某个元素出现的次数 print(l1.count('a1')) ###index——通过元素返回索引 # ——找到第一个就返回,找不到就报错 ###sort——排序——默认从小到大 l11 = [1,4,3,2,6,5,11,9] l12 = [1,4,3,2,6,5,11,9] l11.sort() print(l11) l12.sort(reverse=True) print(l12) ###reverse——反转 l13 = ['a1','b','c','d'] l13.reverse() print(l13)#['d', 'c', 'b', 'a1']
#创建一个从1到9的列表 list1 = list(range(1,10)) print(list1) list2 = ['a1','b','c',1,2,3] #查找元素对应的下标,没有则报错 print(list2.index(3)) #查找元素的个数,没有则是0 print(list2.count('d')) #切片——左闭右开区间——“顾头不顾尾” print(list2[1:2]) #['b'] print(list2[0:-1])#['a1', 'b', 'c', socketserver模块-循环接收0, 2] print(list2[:]) print(list2[::2])#['a1', 'c', 2] print(list2[1::2])#['b', socketserver模块-循环接收0, 3] #增加——append、insert、extend list1.append('w') print(list1) list1.insert(0,'h') print(list1) list1.extend(list2) print(list1) #删除——pop、remove、del list1.pop()#默认删除最后一个 print(list1) list1.pop(-1) print(list1) list1.remove('h') print(list1) #没有的话会报错 # ValueError: list.remove(x): x not in list #list1.remove('ww') # del list2 将列表彻底删掉 #先 del list2 再print(list2)的话会报错,提示list2not defined del list1[2:5] print(list1) ##clear # list2.clear() 清空列表,得到一个空列表 #遍历————for....与enumerate配合 count = 0 for i in list2: count += 1 print(count,len(list2)) for i,v in enumerate(list2,1): print(i,v) #排序——sort()——————反转——reverse() ##注意sort()方法 reverse参数:默认为False:正序,若指定为True:逆序 list3 = [2,32,11,55,0,1,-1] list3.sort(reverse=True) print(list3)#[-socketserver模块-循环接收0, 0, socketserver模块-循环接收0, 2, zz, 32, 55] list3.reverse() print(list3)#[55, 32, zz, 2, socketserver模块-循环接收0, 0, -socketserver模块-循环接收0] ##按照格式打印商品列表 products = [['iphon10',10000],['MacPro',16666],['小米16',1555],['Coffee',23],['Book',12]] print('商品列表'.center(20,'*')) for i,v in enumerate(products,1): print(str(i)+'.',v[0],v[1])