#不同于del,pop()函数可以返回删掉的值 li=["世","界","最","帅"] v1=li.pop(2) #可以指定删除位置,默认是最后一个 print(v1) #输出: 帅 print(li) #输出: ['世', '界', '最']浅谈“列表”使用方法
一、基本功能和格式
# list 列表
li=[1,2,3,"123","456"]
li=[1,2,3,"123","456",["张三","李四","王五"]]
#列表是一种“集合”,类似于C中的数组,最大区别在于C中的数组有类型,数组元素属性唯一;但是列表中可以同时包含数字、字符串、布尔值和嵌套列表
1.支持索引取值和切片取值
1 li=[1,2,3,"123","456"] 2 print(li[0]) 3 print(li[0:4]) #切片取值仍然是左闭右开
输出:
1
[1, 2, 3, '123']
2.列表元素可以被修改
li = [1,2,3,"123","456",["张三","李四","王五"]] li[1] = 22 #将li[1]替换成22 print(li) #[1, 22, 3, '123', '456', ['张三', '李四', '王五']] li[1] = [11,22,33] #将li[1]替换成[11,22,33] print(li) #[1, [11, 22, 33], 3, '123', '456', ['张三', '李四', '王五']] del li[1] #删除li[1] print(li) #[1, 3, '123', '456', ['张三', '李四', '王五']] li[1:3]=[22,33] #切片替换一部分内容 print(li) #[1, 22, 33, '456', ['张三', '李四', '王五']]
输出:
[1, 22, 3, '123', '456', ['张三', '李四', '王五']]
[1, [11, 22, 33], 3, '123', '456', ['张三', '李四', '王五']]
[1, 3, '123', '456', ['张三', '李四', '王五']]
[1, 22, 33, '456', ['张三', '李四', '王五']]
二、进阶功能
1.字符串转换成列表
li = "abcdef" new_li = list(li) print(new_li) # 输出: ['a', 'b', 'c', 'd', 'e', 'f']
2.列表转换成字符串
li = [1,2,3,"aaa","bbb"] s="" for i in li: s+=str(i) print(s) # 输出:123aaabbb
如果列表中都是字符串
li = ["aa","bb","cc"] s="" new_li=s.join(li) print(new_li) # 输出:aabbcc
3. x.append() 功能:在列表最后追加一个新的元素
li = ["aa","bb","cc"] li.append(111) print(li) #['aa', 'bb', 'cc', 111]
x.append()函数前不必再写新的列表名,直接追加到原来的列表后面
也可以实现列表中的所有字符串元素转为数字元素
li=["111",222] new_li=[] for i in li: new_li.append(int(i)) print(new_li) #输出:[111, 222]
4. x.clear()函数 功能:清空列表
li=["111",222] li.clear() print(li) #输出:[]
函数前不用再写新的列表名,直接清空原列表
5. x.copy() 功能:复制列表
li=["111",222] new_li = li.copy() print(new_li) #输出:['111', 222]
6. x.count 功能:统计列表中某个元素的出现次数
li=[1,2,3,4,4,'5','5','5'] i=li.count(4) print(i) #输出:2 i=li.count('5') print(i) #输出:3
7. x.extend() 功能:追加若干个新的元素
li=["魔镜","魔镜"] le=["我","最","帅"] li.extend(le) print(li) # 输出:['魔镜', '魔镜', '我', '最', '帅']
注意区别与append
li=["魔镜","魔镜"] le=["我","最","帅"] # 与 li.append() 相比,是将le中的每一个元素追加到li后面,相当于 for i in le: li.append(i) print(li) #输出:['魔镜', '魔镜', '我', '最', '帅']
li=["魔镜","魔镜"] le=["我","最","帅"] li.append(le) print(li) #输出 :['魔镜', '魔镜', ['我', '最', '帅']]
8. x.index() 功能:根据值找索引位置
li=['1','2','3','4','3','5','6']
print(li.index('1')) #输出 0 print(li.index('3')) #输出 2 如果元素中出现多次参数值,则从做往右,只取第一个位置 print(li.index('6')) #输出 5
#也可以指定查找的起始位置和停止位置。第二个参数是起始位置,第三个参数是结束位置 li=['1','2','3','4','3','5','6'] print(li.index('3',3,5)) #输出:4
如果列表中没有index的参数,报错。
9. x.insert() 功能:在制定位置插入一个元素
#insert有两个参数,第一个是插入位置,第二个是插入内容 li=["世","界","最","帅"] li.insert(2,"我") print(li) # 输出:['世', '界', '我', '最', '帅']
10. x.pop() 功能:删除指定位置元素
#不同于del,pop()函数可以返回删掉的值 li=["世","界","最","帅"] v1=li.pop() print(v1) #输出: 帅 print(li) #输出: ['世', '界', '最']
#不同于del,pop()函数可以返回删掉的值 li=["世","界","最","帅"] v1=li.pop(2) #可以指定删除位置,默认是最后一个 print(v1) #输出: 帅 print(li) #输出: ['世', '界', '最']
11. x.remove() 功能:删除列表中的指定值,左边优先
li=[11,22,33,44,55,22] li.remove(22) print(li) #输出:[11, 33, 44, 55, 22]
12. x.reverse() 功能:将当前列表进行反转
li=[11,22,33,44,55,22] li.reverse() print(li) #输出 :[22, 55, 44, 33, 22, 11]
13. x.sort() 功能:从小到大排序;x.sort(reverse=True):从大到小排序
li=[11,22,44,33,44,55] li.sort() print(li) #输出:[11, 22, 33, 44, 44, 55] li.sort(reverse=True) print(li) #输出:[55, 44, 44, 33, 22, 11]