第四天学习内容_01
---恢复内容开始---
一、列表的增删改查以及嵌套:
1、增加列表元素:append、extend、insert
①、append方法(添加到列表末尾)
li = ['wangwu', 'liusan', 'taibai', 'nvshen'] li.append('liusir') print(li)
li = ['wangwu', 'liusan', 'taibai', 'nvshen'] while 1: use = input('请输入你的名字') if use == '退出': break else: li.append(use) # 不断添加 print(li)
②、insert方法(随意插入任意位置)但是必须指定插入位置,直接插入不指定位置会报错
li = ['wangwu', 'liusan', 'taibai', 'nvshen'] li.insert(3,'laowang') print(li)
③、添加到最后,可迭代最小元素。要以整体添加,加[ ]
li = ['wangwu', 'liusan', 'taibai', 'nvshen'] li.extend('lisi') # 插入时会分解到最小元素 print(li)
li = ['wangwu', 'taibai', 'nvshen'] li.extend(['lisi']) # 插入时会分解到最小元素 print(li)
2、删除列表元素:
①、pop:通过指定索引位置删除,如不指定位置,默认删除最后一个;删除后可以继续引用
li = ['wangwu', 'taibai', 'nvshen'] li.pop(1) # 指定位置删除 print(li) name = li.pop(1) # 删除后可以继续调用 print(name)
②、remove:按列表元素值删除
li = ['wangwu', 'taibai', 'nvshen'] li.remove('taibai') # 按元素值删除 print(li)
③、clear:清空列表
li = ['wangwu', 'taibai', 'nvshen'] li.clear() print(li)
④、del:完全删除整个列表del li;切片删除
li = ['wangwu', 'taibai', 'nvshen'] del li[0:2] # 切片删除 print(li)
3、修改元素:
①、元素位置修改:找到元素位置直接改,可以改成列表
li = ['wangwu', 'taibai', 'nvshen'] li[1] = 'laowang' print(li)
li[0] = [1,2,3]
print(li)
②、按切片修改
li = ['wangwu', 'taibai', 'nvshen'] li[0:2] = ['chunge','xianyuge','lisf','sfsa'] print(li) # 在[0,2]这个区间内,把0,1元素去掉,改成其他元素,里面可以加入多个元素
li1 = ['wangwu', 'taibai', 'nvshen'] li1[0:2] = ['hsahosfoho'] print(li1) # 修改成一个元素也行
4、查找元素:
①、for …in…方法。②、切片查
li = ['wangwu', 'taibai', 'nvshen'] for i in li: print(i) print(li[0:2])
5、几种公共方法:
①、len:长度; ②、index:根据元素查找元素位置; ③、count:数数,数这个元素有几个
li = ['wangwu', 'taibai','nvshen', 'nvshen'] print(len(li)) # ---> 4 print(li.index('taibai')) # ---> 1 num = li.count('nvshen') print(num) # ---> 2
6、排序与反转:
①、正向排序:
li = [1, 5, 2, 6, 3, 7, 0] li.sort() print(li)
②、反向排序:
li = [1, 5, 2, 6, 3, 7, 0] li.sort(reverse=True) print(li)
③、反转:
li = [1, 5, 2, 6, 3, 7, 0] li.reverse() print(li)
二、列表的嵌套:
1、嵌套索引; 2、嵌套替换
li = ['laowang', '吴广', '赵云', ['刘备', '曹操'], '嬴政']
print(li[1][1]) # 第二个元素中的第二个元素:吴->0;广->1 name = li[0].capitalize() # 第一个元素首字母大写 print(name) li[0] = name # 将修改过后的再次放入列表中 print(li) print(li[2].replace('赵', '白')) # replace('old', 'new', 'count') li[2] = li[2].replace('赵', '白') print(li) # 将替换过后的再次放入列表中 li = ['laowang', '吴广', '赵云', ['刘备', 'caocao'], '嬴政'] li[3][1] = li[3][1].upper() # 列表中的列表整个作为一个元素索引 print(li) # 将caocao 全部大写
三、列表转换为字符串:join方法:字符串转换为列表用:分割(split),列表转换为字符串用:join
li = ['john', 'lisa', '4'] # 里面不能包含数字,只能是字符串类型 s1 = '+'.join(li) print(s1) s2 = ''.join(li) print(s2)
四、如何将列表所有元素都打印出来(包括嵌套列表):
1、第一种方法:
li = (1, 'taibai', [6, 'wusir'], 'chensheng')
for i in li:
if type(i) == list:
for k in i:
print(k)
else:
print(i)
2、第二种方法:
li = (1, 'taibai', [6, 'wusir'], 'chensheng')
for i in range(len(li)):
if type(li[i]) == list:
for j in li[i]:
print(j)
else:
print(li[i])
---恢复内容结束---