上两篇介绍了Python的基础语法、数值类型、运算以及字符串操作,今天会总结一下列表操作,列表的增、删、改、查等操作。
Python列表操作
一、表达方式
先简单说一下列表的表达方式
-
用
[]
定义,数据之间使用,分隔(可以是任何类型的数据)
-
有序、数据可重复
-
通过下标索引,从0开始
-
使用最频繁的数据类型
二、空列表和非空列表
-
空列表:列表里什么都没有,举例
student = []
-
非空列表:即列表里有字符串、数字等,举例
now_stu = [1,'珊珊','xiaoming',[1,2,3],True]
三、增删改查
3.1 新增
3.1.1 append
-
格式:列表.append(值),比如
now_stu.append('吃货')
-
每次只能新增一个,并且是新增到列表末尾
如下所示:
now_stu = [1,'珊珊','xiaoming',[1,2,3],True]
now_stu.append('吃货')
print(now_stu)
运行结果:
[1, '珊珊', 'xiaoming', [1, 2, 3], True, '吃货']
3.1.2 insert
insert是在列表某个位置插入某个数据
比如:将‘吃货’插入到列表中下标为1的位置
now_stu = [1,'珊珊','xiaoming',[1,2,3],True]
now_stu.insert(1,'吃货')
print(now_stu)
运行结果:
[1, '吃货', '珊珊', 'xiaoming', [1, 2, 3], True]
3.1.3 extend
extend是指将列表2的成员,追加到列表1的成员当中,格式是
列表1.extend(列表2)
如下所示:是将列表now_stus的数据追加到now_stu中
now_stu = [1,'珊珊','xiaoming',[1,2,3],True]
now_stus = ['吃货',18]
now_stu.extend(now_stus)
print(now_stu)
运行结果:
[1, '珊珊', 'xiaoming', [1, 2, 3], True, '吃货', 18]
3.2 删除
3.2.1 del
格式:
del 列表[索引]
,是指删除列表中某个索引的数据
如下所示:
now_stu = [123,'珊珊','xiaoming',[1,2,3],True]
del now_stu[-1]
print(now_stu)
运行结果:
[123, '珊珊', 'xiaoming', [1, 2, 3]]
3.2.2 remove
格式:
列表.remove(数据)
,是指删除列表当中
第一次
出现的指定数据
如下所示:列表中存在两个相同的数据 123,用remove后删除了第一次出现的 123
now_stu = [123,'珊珊','xiaoming',[1,2,3],True,123]
now_stu.remove(123)
print(now_stu)
运行结果:
['珊珊', 'xiaoming', [1, 2, 3], True, 123]
3.2.3 pop
格式:
列表.pop( )
,是指删除列表末尾数据
如下所示:
now_stu = [123,'珊珊','xiaoming',[1,2,3],True]
now_stu.pop()
print(now_stu)
运行结果:
[123, '珊珊', 'xiaoming', [1,
2, 3]]
3.2.4 clear
格式:
列表.clear( )
,是指清空列表
如下所示:
now_stu = [123,'珊珊','xiaoming',[1,2,3],True]
now_stu.clear()
print(now_stu)
运行结果:
[]
3.3 修改
格式:
列表[index] = new值
now_stu = [123,'珊珊','xiaoming',[1,2,3],True]
index = now_stu.index(123)
now_stu[index] = 'xiaoxiao'
print(now_stu)
运行结果:
['xiaoxiao', '珊珊', 'xiaoming', [1, 2, 3], True]
3.4 查询
-
列表数据获取-字符串切片
例如:
now_stu = [123,'珊珊','xiaoming',[1,2,3],True]
print(now_stu[-2][1])
print(now_stu[:-3])
运行结果:
2
[123, '珊珊']
-
读取数据
(1) 通过索引获取,格式:
列表[索引]
例如:
now_stu = [123,'珊珊','xiaoming',[1
,2,3],True]
print(now_stu[3])
运行结果:
[1, 2, 3]
(2)获取数据第一次出现的索引,格式:
列表.index(数据)
例如:
now_stu = [123,'珊珊','xiaoming',[1,2,3],True,'xiaoming']
print(now_stu.index('xiaoming'))
运行结果:
2
四、获取长度
获取列表长度 ,格式:
len(列表)
如下所示:
now_stu = [123,'珊珊','xiaoming',[1,2,3],True,'xiaoming']
print(len(now_stu))
运行结果:
6
注:列表长度是指列表中包含有几条数据,从1开始数,而不是下标0开始
五、成员运算符
-
数据 in 列表,表示数据是列表的成员之一。结果为True/False。格式:
成员 in 集体(列表/字符串)
-
数据 not in 列表,表示数据不是列表的成员之一。结果也为True/False。格式:
成员 not in 集体(列表/字符串)
如下所示:
now_stu = [123,'珊珊','xiaoming',[1,2,3],True,'xiaoming']
print(12 in now_stu)
print('wo' not in now_stu)
运行结果:
False
True
六、列表排序与反转
6.1 升序
格式:
列表.sort()
升序排列,直接列表进行修改
排列的依据是ASCII码值
如下所示:
now_stu = ['珊珊',
'xiaoming','wo','123']
now_stu.sort()
print(now_stu)
运行结果:
['123', 'wo', 'xiaoming', '珊珊']
6.2 降序
格式:
列表.sort(reverse = True)
,降序排列
如下所示:
now_stu = ['珊珊','xiaoming','wo','123']
now_stu.sort(reverse=True)
print(now_stu)
运行结果:
['珊珊', 'xiaoming', 'wo', '123']
6.3 反转/倒序
格式:
列表.reverse()
,列表的反转/倒序
如下所示:
now_stu = ['珊珊','xiaoming','wo','123']
now_stu.reverse()
print(now_stu)
now_stu = ['珊珊','xiaoming','wo','123']
new_stu = now_stu[::-1]
print(new_stu)
运行结果:
['123', 'wo', 'xiaoming', '珊珊']
['123', 'wo', 'xiaoming', '珊珊']
6.4 sorted
系统自带的,不会对列表本身做修改,生成一个新的列表,格式:
sorted()
如下所示:
now_stu = ['珊珊','xiaoming','wo','123']
new_stu = sorted(now_stu,reverse=True)
print(new_stu)
运行结果:
['珊珊', 'xiaoming', 'wo', '123']
七、总结
列表操作的内容就记录到这里了,下一篇会讲到字典,给大家附上一张图简单总结一下。