列表索引和切片
和字符串一样, 也有索引和切片, 只不过切出来的内容是列表. 索引的下标从 0 开始.
- lst= ["海上钢琴师", "奥特曼", "舌尖 3", "金刚"]
- print(lst[3]) #金刚
- print(lst[3][1]) #刚
- print(lst[1:3]) #['奥特曼', '舌尖 3']
- print(lst[-3:-1]) #['奥特曼', '舌尖 3']
- print(lst[1::2]) #['奥特曼', '金刚']
列表的增删改查 ***
增加:
** s.append("A") 在尾部追加; 这个需要记住
- lst = ["A","B","C","D","E","F"]
- lst.append("z") #在原有的基础上进行的修改操作, 这一点和字符串不一样, 字符串是不改变原字符串
- print(lst) #['A', 'B', 'C', 'D', 'E', 'F', 'z']
s.insert(index,"A") 在某个位置插入添加, 之后的所有元素会往后移动一位, 所以效率低;
- lst.insert(1,"王力宏") #在某个位置插入 效率低 因为插入的位置后面的元素都往后移动
- print(lst) #['A', '王力宏', 'B', 'C', 'D', 'E', 'F']
s.extend(["A"]) 迭代添加, 自动添加到列表的后面, 注意要用 [] 括起来需要添加的元素, 不然会以单个字符逐一添加进去
- lst.extend("马化腾") #注意 是迭代添加的每一个字符 是在列表后面添加
- print(lst) #['A', 'B', 'C', 'D', 'E', 'F', '马', '化', '腾']
- lst.extend(["马化腾"]) #以一个整体添加 是在后面添加
- print(lst) #['A', 'B', 'C', 'D', 'E', 'F', '马化腾']
删除:
** s.remove("E"): 表示删除元素 E
- lst.remove("E") #删除元素 E, 如果元素不存在会报错
- print(lst) #['A', 'B', 'C', 'D', 'F']
- pop(index):
- data= lst.pop(3) #把 3 号位置的弹出 并返回弹出的元素
- print(data)#D
- print(lst)#['A', 'B', 'C', 'E', 'F']
del list1[1]: 表示删除列表中 1 号位置上的元素 B
- del lst[1]
- print(lst) #['A', 'C', 'D', 'E', 'F']
del list1[1:3]: 表示切片删除
- del lst[1:3] #切片删除
- print(lst) #['A', 'D', 'E', 'F']
list1.clear() 是清空列表
- lst.clear() #清空列表
- print(lst)#[]
修改:
** 索引修改
- lst = ["王者","魔兽","DNF","反恐","三国"]
- lst[0]= "扫雷"
- print(lst)#['扫雷', '魔兽', 'DNF', '反恐', '三国']
s[1:3] = "泡泡" 切片修改(不常见): 步长不是 1 的时候容易报错
- lst[1:3]=["泡泡"] #先删除后添加, 把 1--3 的位置换成 1 个 "泡泡"
- print(lst)#['王者', '泡泡', '反恐', '三国']
查看:
通过循环查找
- lst = ["锅包肉","火锅","烤鱼","青菜","烤鸭"]
- for i in lst:
- print(i)# 锅包肉 火锅 烤鱼 青菜 烤鸭
索引查找
- li = ['taibai','alex','wusir','egon','hulu','jingnvsh']
- print(li[1:4]) # ['alex', 'wusir', 'egon']
常用操作:
列表的嵌套
降维操作 一层一层看
- lst = ["alex","gay","wusir",["范冰冰","李冰冰",[1,"火锅","abc","凤爪"]]]
- print(lst[3][2]) #[1, '火锅', '凤爪']
sort() 升序, sort (reverse=True) 降序
- lst = [1,5,3,4,2,8]
- lst.sort() #默认是升序
- print(lst) #[1, 2, 3, 4, 5, 8]
- lst = [1,5,3,4,2,8]
- lst.sort(reverse=True) # 降序排列
- print(lst) #[8, 5, 4, 3, 2, 1]
reverse()翻转列表的顺序
- lst = ["小学","小花","小梅"]
- lst.reverse() # 翻转排序
- print(lst) #['小梅', '小花', '小学'
len()求长度
- lst = ["小学","小花","小梅"]
- print(len(lst)) #3
来源: http://www.bubuko.com/infodetail-2710264.html