> lst =[1,2,3]*[2,3,4]# 错误的示范及报错内容>'''
> File "<stdin>", line 1, in <module>
> TypeError: can't multiply sequence by non-int of type 'list'
> '''> lst =[1,2,3]*2>[1,2,3,1,2,3]
in —— 用来检查指定元素是否存在于列表中,如果在返回True,如果不在返回False
> a =[1,2,3]>4in a
>False>3in a
>True
not in —— 用来检查指定元素是否存在于列表中,如果不在返回True,如果在返回False
> a =[1,2,3]>4notin a
>True>3notin a
>False
len(list)函数 —— 列表长度
> a =[1,2,3]>len(a)>3
min(list)函数 —— 列表内最小值
> a =[1,2,3]>min(a)>1
max(list)函数 —— 列表内最大值
> a =[1,2,3]>max(a)>3
list.index(x[,start[,end]])方法 —— 获取x在列表中首次出现的位置
> a =[1,2,3,4,5,6,1,2,3,4,5,6]>list.index(3)>2>list.index(3,3)# 结束位置不写为起始位置到最后一个元素>8>list.index(3,3,8)# 如果未找到则报错:值错误'''
File "<stdin>", line 1, in <module>
ValueError: 3 is not in list
'''
list.count(x) —— 获取x在列表中出现的总次数
> a =[1,2,3,4,5,6,1,2,3,4,5,6]> a.count(4)>2
修改列表
修改列表的方法
含义
list[x] = y
通过索引x修改列表
关键字del删除元素,方法:del list[x]
删除索引x元素
list[a:b] = [x,y,…]
通过切片方式修改列表(a到b的元素数量等于替换元素数量)
list[a:b] = [x,y,z,…]
通过切片方式修改列表(a到b的元素数量不等于替换元素数量)
list[a : b : c] = [x,y,…]
通过切片方式修改列表(增加步长),如设置步长,序列中的元素个数必须和切片的元素个数保持一致
list[a:b] = []
通过切片方式删除元素
通过索引修改列表
># list[x] = y 当x在列表范围内,修改列表正常> a =[1,2,3,4,5,6]> a[2]=7>[1,2,7,4,5,6]># list[x] = y 当x在列表范围外,会报错:索引错误> a =[1,2,3,4,5,6]> a[6]=7>'''
> File "<stdin>", line 1, in <module>
> IndexError: list assignment index out of range
> '''
通过del删除元素
># 删除单个元素> a =[1,2,3,4,5,6]>del a[3]>[1,2,3,5,6]># 利用切片删除多个元素>del a[:2]>[3,5,6]># 利用切片及步长删除多个元素> a =[1,2,3,4,5,6]>del a[1:5:2]>[1,3,5,6]
通过切片方式修改列表
># list[a:b] = [x,y,...]> a =[1,2,3,4,5,6]> a[:2]=[7,8]>[7,8,3,4,5,6]># list[a:b] = [x,y,z,...]> a =[1,2,3,4,5,6]> a[:2]=[7,8,9]>[7,8,9,3,4,5,6]# 如果替换元素大于原有元素,多余的元素会依次往后顺延># list[a:b] = [x,y,z,...]> a =[1,2,3,4,5,6]> a[:2]=[7]>[7,3,4,5,6]# 如果替换元素小于原有元素,原有被切片的元素变成替换的元素># list[a:b] = [x,y,z,...] a等于b> a =[1,2,3,4,5,6]> a [2:2]=[7]>[1,2,7,3,4,5,6]# 如果切片的起始和结束一样,在切片位置前插入元素># list[a:b:c] = [x,y,...] > a =[1,2,3,4,5,6]> a[::2]=[7]# 报值错误:设置步长,序列中的元素个数必须和切片的元素个数保持一致>'''
> File "<stdin>", line 1, in <module>
> ValueError: attempt to assign sequence of size 1 to extended slice of size 3
> '''> a[::2]=[7,8,9]>[7,2,8,4,9,6]># list[a:b] = [] 当赋值为空列表时> a =[1,2,3,4,5,6]> a[1:4]=[]>[1,5,6]
> a =[1,2,3,4,5,6]> a.extend([7,8])>[1,2,3,4,5,6,7,8]> a =[1,2,3,4,5,6]> a.extend(7,8)# 只能添加一个参数,且是序列>'''
> File "<stdin>", line 1, in <module>
> TypeError: extend() takes exactly one argument (2 given)
> '''> a =[1,2,3,4,5,6]> a.extend(7)# 只能添加一个参数,且是序列>'''
> File "<stdin>", line 1, in <module>
> TypeError: 'int' object is not iterable
> '''
清空列表
> a =[1,2,3,4,5,6]> a.clear()>[]> a =[1,2,3,4,5,6]>del a[:]>[]
根据索引值删除元素,并返回值
> a =[1,2,3,4,5,6]> a.pop(2)>3> a =[1,2,3,4,5,6]> b = a.pop()>print(b)>6>print(a)>[1,2,3,4,5]
根据指定值删除元素
> a =[1,2,3,4,5,6]> a.remove(3)>[1,2,4,5,6]> a =[1,2,3,1,2,3]> a.remove(2)# 根据指定值删除第一个出现的元素>[1,3,1,2,3]
翻转列表
> a =[1,2,3,4,5,6]> a.reverse()>[6,5,4,3,2,1]> a =[1,2,3,4,5,6]> a[::-1]>[6,5,4,3,2,1]
列表排序
> a =[1,2,3,1,2,3]> a.sort()# 默认升序排列>[1,1,2,2,3,3]> a =[1,2,3,1,2,3]> a.sort(reverse =True)# 参数内添加reverse = True,将列表变为降序排列>[3,3,2,2,1,1]
for循环 —— 遍历
概念 —— 将任意数据类型中的元素提取出来
语法: for 变量 in 序列(遍历的规则): 代码块
for循环的代码会执行多次,序列中有几个元素就执行几次
每执行一次就会将序列中的元素赋值给变量,通过变量来获取序列中的元素
range函数
参数 —— range(start,end,step)
>print(range(5))# ---> range(0,5)>print(range(0,5))# ---> range(0,5)>print(range(0,5,1))# ---> range(0,5)># start 默认为0 (必须为整数)># end 不包括结束(必须为整数):print(range(0,5))结果为[0,1,2,3,4]># step 默认为1(可以是除零外的整数,如果是负数,结果为空:list(range(0,10,-1))结果为[])>print(list(range(0,10,0))>'''
> File "<stdin>", line 1, in <module>
> ValueError: range() arg 3 must not be zero
> '''