列表
声明一个空列表
变量=[]或 变量=list()
声明一个带有数据的列表
变量=[值,值……] 或变量=list(容器类数据)(本质上就是数据类型转换)
列表的基本操作:
增:不可以使用索引直接添加
删:del 变量[索引]
改:变量[索引]=新值
查:变量[索引]
查看
list1=['孙','志','成','啊']
res=list1[0:3]
print(res)
修改
list1=['孙','志','成','啊']
list1[0:3]=['孙','可']
print(list1)
增加 (开始值与结束值一定要相同,否则就是修改)
list1=['孙','志','成','啊']
list1[0:0]=['孙','可']
print(list1)
删除
list1=['孙','志','成','啊']
del list1[0:3]
print(list1)
列表的相关函数:
append();向列表添加数据(追加到最后面)
insert():在列表的指定索引之前添加数据
pop():在列表的指定索引位置删除数据(不放数据时默认删除最后一个)
remove():在列表中删除指定数据
clear();清空数据
count():计算列表中指定数据出现的次数
extend():将两个列表合在一起,与“+”效果一样
reverse()列表反转
sort(reverse=False):列表排序(默认为升序)
index();获取某个值在列表的索引
copy():
浅拷贝:
对列表的切片拷贝[:]
调用对象的拷贝:list.copy()
调用:copy.copy() (注意;要导包 import copy)
深拷贝:
copy.deepcopy() (注意:要导包 import copy)
列表推导式
基本推导式
结果变量=[变量 for 变量 in 容器]
res =[i for i in range(5)]
print(res)
带有判断条件的推导式
结果变量=[变量 for 变量 in 容器 条件表达式]
res =[i for i in range(5) if i%2==0]
print(res)
判断条件在前
结果变量=[变量 条件表达式真区间值 else 假区间值 for 变量 in 容器]
多循环列表推导式
结果变量=[变量1 运算 变量2 for 变量1 in 容器 for 变量2 in 容器]
res =[i+j for i in range(5) for j in range(4) ]
print(res)
带有条件的多循环推导式
结果变量=[变量1 运算 变量2 for 变量1 in 容器 for 变量2 in 容器 条件表达式]
res=[i+j for i in range(5) for j in range(4) if i%2==0 and j%2==0]
print(res)
列表的遍历
for …… in 容器
列表具有穿透性
list1=[1,2,3,4]
def func():
list1[0:]=[7,8,9]
print(list1)
func()