python中的容器分为5类:列表(list)、元组(tuple)、字符串(str)、集合(set)、字典(dict)
定义:
#字面量
[元素1,元素2,元素3,元素4,...]
#定义变量
变量名称=[元素1,元素2,元素3,...]
#定义空列表
变量名称={}
变量名称=list()
demo1:列表的定义
name_list=["cc","xiao","xia"]
print(name_list)
print(type(name_list))
#列表中可以包含不同类型的元素
name_list2=["aa",11,True]
print(name_list2)
print(type(name_list2))
#嵌套列表
name_list3=[[1,2,3],[4,5,6]]
print(name_list3)
print(type(name_list3))
运行结果:
['cc', 'xiao', 'xia']
<class 'list'>
['aa', 11, True]
<class 'list'>
[[1, 2, 3], [4, 5, 6]]
<class 'list'>
demo2:通过下标获取某个元素值
name_list=["aa","bb","cc"]
print(name_list[0])
print(name_list[1])
print(name_list[2])
#反向查找
print(name_list[-1]) #cc
print(name_list[-2]) #bb
print(name_list[-3]) #aa
#获取嵌套列表中某个元素值
name_list2=[[1,2,3],[4,5,6]]
print(name_list2[0]) #[1,2,3]
print(name_list2[0][1]) # 2
运行结果:
aa
bb
cc
cc
bb
aa
[1, 2, 3]
2
demo3: 列表常见操作
#列表的基本操作
name_list=["aa","bb","cc"]
#查找某个元素所对应的下标:列表名.index("某个元素值")
print(name_list.index("bb"))
#修改某个元素的值:通过下标重新赋值
name_list[1]="dd"
print(name_list) # aa dd cc
#在某个位置插入元素:列表名.insert(下标,"元素值")
name_list.insert(1,"bb")
print(name_list)
#在列表尾部追加元素:列表名.append("元素值")
name_list.append("ee")
print(name_list)
#追加方式2:列表名.extend(其他容器类型)
name_list2=[1,2,3]
name_list2.extend([4,5,6])
print(name_list2)
#删除元素:del 列表名[下标] 或 列表名.pop(下标)
name_list3=[1,2,3]
del name_list3[0]
print(name_list3)
name_list3=[1,2,3]
name_list3.pop(0)
print(name_list3)
#删除某元素在列表中的第一个匹配项:列表名.remove(元素)
name_list4=[1,2,3,1,2]
name_list4.remove(1)
print(name_list4)
#清空列表: 列表名.clear()
name_list4.clear()
print(name_list4)
#统计某个元素在列表中的次数
name_list4=[1,2,3,1,2]
print(name_list4.count(1))
#列表长度 len(列表名)
print(len(name_list4))
运行结果:
1
['aa', 'dd', 'cc']
['aa', 'bb', 'dd', 'cc']
['aa', 'bb', 'dd', 'cc', 'ee']
[1, 2, 3, 4, 5, 6]
[2, 3]
[2, 3]
[2, 3, 1, 2]
[]
2
5
demo4:列表遍历
#while循环遍历
list=[1,2,3]
i=0
while i<len(list):
i=list[i]
print(i)
i+1
#for循环遍历
for i in list:
print(i)
运行结果:
1
2
3
1
2
3
列表的特点:
- 可以容纳多个元素(上限为2 ^63 −1、9223372036854775807个)
- 可以容纳不同类型的元素(混装)
- 数据是有序存储的(有下标序号)
- 允许重复数据存在
- 可以修改(增加或删除元素等)