前言
Python 提供了大量的内置数据结构,包括列表,集合以及字典。大多数情况下使
用这些数据结构是很简单的。但是,我们也会经常碰到到诸如查询,排序和过滤等等这
些普遍存在的问题。
1. 列表list
1.1 创建列表
- 创建空列表
eg: name=[] - 创建非空列表
eg: name=[“李白”,“曹操”,“孔明”,“孙权”,“于禁”,“孙策”]
1.2 访问列表
- 下标索引访问列表
>>> name=["李白","曹操","孔明","孙权","于禁","孙策"]
>>> name[2] # 下标从0开始
'孔明'
>>> name [-3] # 反向索引 即最后一个元素为-1,往前数,于禁为-2,孙权为-3
'孙权'
- 切片访问
切片访问格式: list_name[strat : end : step]
说明:区间为左闭右开,start 表示起始索引,end 表示结束索引,step 表示步长
>>> name[1:3:1] #从下标索引为1开始,3结束,步长为1
['曹操', '孔明']
>>> name[1:5:2] #从下标索引为1开始,5结束,步长为2,但由于左开右闭,故不包含5,也就是孙策
['曹操', '孙权']
- for循环遍历
>>> for i in name:print(i)
...
李白
曹操
孔明
孙权
于禁
孙策
1.3 修改或更新列表值
- 直接赋值
>>> name[4]="张飞" #将于禁修改为张飞
>>> name[4]
'张飞'
- 追加append,在列表末尾追加一个元素
>>> name.append("关羽")
>>> name
['李白', '曹操', '孔明', '孙权', '张飞', '孙策', '关羽']
- 弹出,弹出指定下标的元素
>>> name.pop(2) #不添加下标默认弹出最后一个元素
'孔明'
>>> name
['李白', '曹操', '孙权', '张飞', '孙策', '关羽']
- 插入一个值,insert