一.列表的定义
1.列表是一个可变的数据类型
2.列表由[]表示,每一项元素使用逗号隔开,列表什么都能装,是能装对象的对象.
3.列表可以装大量数据
二.列表的索引和切片
1.列表和字符串一样也有索引和切片.只不过切出来的内容是列表
2.索引的下表从零开始
3.切片:[起始位置:结束位置:步长]
例题:
1.索引
lst = ["海上钢琴师", "奥特曼", "咒怨", "舌尖上的中国", "穹顶之下", "金刚"] print(lst[3][2]) # 上 print(lst[-2]) # 穹顶之下 print(lst[1:4]) # ['奥特曼', '咒怨', '舌尖上的中国'] print(lst[-3:-1]) # 顾头不顾尾 print(lst[1::2]) print(lst[-1:-5:-2])
2.切片
lst = ["海上钢琴师", "人在囧途", "咒怨", "舌尖上的中国", "苍穹之下", "金刚"]
print(lst[1:4]#["人在囧途", "咒怨", "舌尖上的中国"]
print(lst[-3:-1]#["舌尖上的中国", "苍穹之下"] 顾头不顾尾
三.列表的增删改查
1.增加
append()追加
例题:
lst = ["赵四", "施瓦星格", "黄渤", "郭达森", "赛利亚"] #在屁股后面添加 lst.append("黄宏") # 在原有的基础上进行的操作
insert(index,元素) 在index位置添加元素
# 在xxx位置插入xxxx内容 lst.insert(1,"王力宏")
例题:
extend()迭代添加
例题:
lst.extend(["麻花藤", "马云", "王健林", "许家印"]) # 迭代添加 print(lst)
2.删除
pop(index)按照位置删除元素
data = lst.pop(2) # 返回被删除的数据 print(data) print(lst)
remove(元素) 直接删除元素
lst.remove("赵四") # 删除元素. lst.remove("刘能") # 如果不存在会报错
del 切片
del lst[1:3]
chear()清空列表
lst.clear() print(lst)#[]
3.修改
索引修改
lst = ["王者农药", "魔兽世界", "DNF", "逆水寒", "反恐精英"] lst[0] = "扫雷" print(lst) lst[3] = "吃鸡"
切片修改
lst[1:3] = ["跑跑卡丁车"] # 先删除后添加 lst[1::2] = ["QQ华夏","QQ三国"] # 切片修改的时候. 如果步长不是1. 注意元素的个数 print(lst)
4.查询
for el in list:
el
lst = ["锅包肉", "好人家火锅", "巫山烤鱼", "清水煮白菜", "烤鸭"] for el in lst: # element(元素) print(el)
四.列表的常用操作
1.sort()排序 reverse=True降序
lst = [1,5,3,4,3,2,44,3,2,22] lst.sort(reverse=True) # 排序. 默认升序, reverse=True 降序 print(lst)
2.reverse()翻转
lst = ['晓雪',"小茹", "小花","晓梅"] lst.reverse() # 翻转 print(lst)
3.len()求长度
print(len(lst))
五.列表的嵌套
降维,一层一层的看
lst = ["alex", "gay","wusir",["范冰冰","李冰冰",[1, "火锅", "ritian", "凤爪"],"王冰冰"]] print(lst[3][2][1]) # 火锅 lst[3][2][2] = lst[3][2][2].upper() print(lst) lst[3][2][0] = lst[3][2][0] + 99 print(lst)
六.元组
1.元组是只读列表,只能看,什么也不能做.
2.使用()来表示元组
3.如果元组中只有一个元素(元素, )
4.空元组是:tuple()
5.元组是一个可迭代对象,可以使用for循环 #所有可迭代对象都可以使用for循环
6.元组的第一层是不能进行赋值的. 内部元素是没有要求
七.rang
1.切片
rang(n) 从0到n-1
rang(m,n) 从m到n-1
rang(m,n,q) 从m到n-1 每个q取一个
2.使用rang和for循环来获取列表中的索引
for i iin rang(len(列表)):
i 索引
列表[i] 元素
range()是一个可迭代对象 #1. range(n) 0 -> n-1 for i in range(10): print(i) # 2. range(m,n) m -> n-1 for i in range(1,10): print(i) # 3. range(m,n,q) m -> n-1 每q个取一个 for i in range(1,10,3): print(i) for i in range(100, 90, -1): print(i) # 0 1 2 3 4 5... lst = ["砂锅", "馒头", "盖浇饭", "刀削面", "大麻花", "大煎饼"] # 获取到列表的索引. 拿到索引之后. 可以拿到元素 for i in range(len(lst)): print(i) # i就是lst的索引 print(lst[i]) for el in lst: print(el)