列表
目标
- 列表的应用场景
- 列表的格式
- 列表的常用操作
- 列表的循环遍历
- 列表的嵌套使用
一列表的应用场景
怎末存储100个学生的名字,如何书写,声明100个变量
二、列表的格式
[数据1,数据2,数据3,...]
列表可以一次性存多个数据,可以为不同的数据类型
三、列表的常用操作
3.1 查找
3.1.1下标
name=['tom','lili','rode'] print(name) print(name[0]) #tom print(name[1]) #lili print(name[2]) #rode
3.1.2函数
index()返回指定数据所在位置下标
1语法
列表学列.index(数据,开始位置下标,结束位置下标)
2快速体验
print(name.index('lili',0,2))
注意查找的数据不存在就报错
count() 统计指定数据在当前列表中出现的次数
print(name.count('lili')) #1
len()访问列表长度,即列表中的数据个数
print(len(name)) #3
3.1.3判断是否存在
in:判断指定数据在某个列表序列,如果在返回True,否则返回false
print('lili' in name) #True
not in :判断指定数据不在某个列表序列,如果不在返回True,否则返回false
print('lili' not in name)#False
3.2列表增加
append
作用:增加指定数据到列表中
append();列表结尾追加数据
1语法
列表序列.append(数据)
2体验
name=['tom','lili','rode'] name.append('liming') print(name) #['tom', 'lili', 'rode', 'liming']
注意 列表可变的数据类型
append()追加的是一个序列,则追加整个序列到列表中
name.append([11,22]) ['tom', 'lili', 'rode', 'liming', [11, 22]]
extend
extend()列表结尾增加数据,如果数据是一个列表,则将这个序列的数据逐一添加到列表
1语法
列表序列.extend(数据)
2快速体验
2.1单个数据
name=['tom','lili','rode'] name.extend('xiaoming') print(name) #['tom', 'lili', 'rode', 'x', 'i', 'a', 'o', 'm', 'i', 'n', 'g']
2.2序列
name=['tom','lili','rode'] name.extend(['aaa','cccc']) print(name) #['tom', 'lili', 'rode', 'aaa', 'cccc']
insert
insert() 指定位置增加数据
1语法
列表序列.insert(数据)
2快速体验
3.3删除
del
语法
del 目标
快速体验
删除列表
name=['tom','lili','rode'] del name print(name)
删除指定数据
name=['tom','lili','rode'] del name[2] print(name) #['tom', 'lili']
pop
.使用列表的pop()方法删除并返回指定位置上的元素(默认为最后一个即pop(len(list)-1),删除下标为index的元素可表示为pop(index))
name=['tom','lili','rode'] new_name=name.pop() print(new_name) print(name) #rode #['tom', 'lili']
remove
remove()移除某个数据的第一个匹配相
1语法
列表序列.remove(数据)
快速体验
name=['tom','lili','rode'] name.remove('lili') print(name) #['tom', 'rode']
clear
clear() :清空列表
name=['tom','lili','rode'] name.clear() print(name) #[]
3.4修改
修改指定下标的数据
name=['tom','lili','rode'] name[0]='aaa' print(name) #['aaa', 'lili', 'rode']
逆置:reverse()
#2逆序 list1=[1,2,3,4,5,6] list1.reverse() print(list1) #[6, 5, 4, 3, 2, 1]
排序:sort()
语法
列表序列.sort(key=None,reverse=False)
注意 reverse表示排序规则,reverse=True,降序 reverse=False(默认)升序
list1=[1,2,3,4,5,6] list1.sort() print(list1) #[1, 2, 3, 4, 5, 6]
list1=[1,2,3,4,5,6] list1.sort(key=None,reverse=True) print(list1) #[6, 5, 4, 3, 2, 1]
3.5列表的复制
copy()
list1=[1,2,3,4,5,6] name1=name.copy() print(name1)
四、列表的循环遍历
4.1while
name=['tom','lili','rode'] i=0 while i<len(name): print(name[i]) i+=1 """ tom lili rode """
4.2for
name=['tom','lili','rode'] for i in name: print(i) """ tom lili rode """
五、列表嵌套
一个列表中包含了其他的子列表
存储一个年级,一班,二班,三班的信息
name=[['tom','lili','rode'],['tom2','lili2','rode2'],['tom3','lili3','rode3']]
查询’
name=[['tom','lili','rode'],['tom2','lili2','rode2'],['tom3','lili3','rode3']] print(name[0][1])
import random teach=['A','B','C','D','E','F','G','H'] office=[[],[],[]] for name in teach: num=random.randint(0,2) office[num].append(name) print(office)