1. 什么是列表
列表是一个可变的数据类型
列表由 [] 来表示, 每一项元素使用逗号隔开. 列表什么都能装. 能装对象的对象.
列表可以装大量的数据
2. 列表的索引和切片
列表和字符串一样. 也有索引和切片. 只不过切出来的内容是列表
索引的下标从 0 开始
[起始位置: 结束位置: 步长]
- lst = ["移动硬盘", "手机", 110, True, False, ["人民币", "美金", '欧元']]
- 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])
3. 列表的增删改查 *
1. 增加
append() 追加
insert(index, 元素) 在 index 位置添加元素
extend() 迭代添加
2. 删除
pop(index) 按照位置删除元素
remove(元素) 直接删除元素
del 切片.
clear() 清空列表
3. 修改
索引修改
切片修改
4. 查询
- for el in list:
- el
- lst = ["赵四", "施瓦星格", "黄渤", "郭达森", "赛利亚"]
- # 在屁股后面添加
- lst.append("黄宏") # 在原有的基础上进行的操作
- # 在 xxx 位置插入 xxxx 内容
- lst.insert(1,"王力宏")
- lst.extend(["麻花藤", "马云", "王健林", "许家印"]) # 迭代添加
- print(lst)
- # 删除
- data = lst.pop(2) # 返回被删除的数据
- print(data)
- print(lst)
- lst.remove("赵四") # 删除元素.
- lst.remove("刘能") # 如果不存在会报错
- # 切片删除
- del lst[1:3]
- # 清空
- lst.clear()
- print(lst)
- lst = ["王者农药", "魔兽世界", "DNF", "逆水寒", "反恐精英"]
- lst[0] = "扫雷"
- print(lst)
- lst[3] = "吃鸡"
- lst[1:3] = ["跑跑卡丁车"] # 先删除后添加
- lst[1::2] = ["QQ 华夏","QQ 三国"] # 切片修改的时候. 如果步长不是 1. 注意元素的个数
- print(lst)
- lst = ["锅包肉", "好人家火锅", "巫山烤鱼", "清水煮白菜", "烤鸭"]
- for el in lst: # element(元素)
- print(el)
5. 常用操作
1. sort() 排序 reverse=True 降序
2. reverse() 翻转
3. len() 求长度
4. 列表的嵌套
降维. 一层一层看
- 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)
- lst = [1,5,3,4,3,2,44,3,2,22]
- lst.sort(reverse=True) # 排序. 默认升序, reverse=True 降序
- print(lst)
- lst = ['晓雪',"小茹", "小花","晓梅"]
- lst.reverse() # 翻转
- print(lst)
- print(len(lst))
5. 元组
只读列表. 只能看啥也不能干.
使用 () 表示元组
如果元祖中只有一个元素(元素, )
空元组: tuple()
元祖是一个可迭代对象, 可以使用 for 循环
- print((1+3)*5)
- print((3))
- tu = (3, ) # 元组中如果只有一个元素. 需要在括号里写一个,
- tu = tuple() # 空元组
- print(type(tu))
- tu = ("人民币", "美元", "英镑", "欧元")
- tu.append("哈哈")
- tu[0] = "日元" # 不予许修改
- del tu[2] # 删除也不行
- print(tu[2]) # 索引可以用
- print(tu[::2])
- for el in tu:
- print(el)
- # 元组的第一层是不能进行赋值的. 内部元素是没有要求
- tu = (1, "哈喽", "how are you?", "alex", ["alex"])
- tu[3].upper()
- print(tu)
- 6. range
range(n) 从 0 到 n-1
range(m,n) 从 m 到 n-1
range(m,n,q) 从 m 到 n-1 每 q 个取 1 个
综上就是切片
- # 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)
7. 使用 range 和 for 循环来获取列表中的索引
for i in range(len(列表)):
i 索引
列表[i] 元素
来源: https://www.cnblogs.com/David-domain/p/10807968.html