列表
列表
定义:原来的单值变量无法满足业务需求,需要一个容器来装内容
列表存储一系列有序的(有下标)数据,容器内可以保存整数,布尔,字符串,或其它容器
语法:中括号括住,逗号分隔。
创建:
1.类实例化创建 , 如:demo_list = list()
2.创建一个空列表,如: demo_list = []
3.创建时声明变量,如:demo_list = [‘小明’,‘小红’,‘小王’]
一、添加项
1.append()方法:添加新项到列表的末尾
语法:list实例.append(要添加的项),例如:
student_list = ['小明','小红','小王']
student_list.append('小李')
print(student_list)
2.insert()方法:可以根据索引值插入指定数据
索引,index
语法:列表实例.insert(索引,要添加的项),键入指定下标处,例如:
student_list = ['小明','小红','小王']
student_list.insert(1,'小杨')
print(student_list)
3.for循环+append,批量添加项,例如:
list1 = [1,2,3,4,5]
for i in range(5,8):
list1.append(i)
print(list1)
4.两个列表拼接,用加号连接,例如:
list1 = [1,2,3,4]
list2 = [8,9,10]
list3 = list1 + list2
print(list3)
二、删除项
1.pop()方法:索引删除,索引从0开始
语法:列表.pop(索引),根据索引删除列表的某一个元素,返回删除成功的元素
pop()不传索引参数的时候,默认删除列表的最后一项,例如:
student_list = ['小明','小红','小王']
student_list.pop(0)
print(student_list)
2.remove()方法:列表中的项直接删除
语法:列表.remove(要删除的项),如果值不存在的话直接报错。例如:
student_list = ['小明','小红','小王']
list1.remove(‘小明’)
print(student_list)
3.clear()方法:清空列表
语法:列表.clear(),清空所有项,返回空列表,例如:
list1 = [1,2,3,4,5]
list1.clear()
print(list1)
4.del 关键字删除
语法:del 列表[索引],根据索引值删除,删除列表中的项,例如:
student_list = ['小明','小红','小王']
del student_list[0]
print(student_list)
三、修改项
修改是基于索引的,访问列表下标,然后等号赋值
语法:列表[索引] = ‘新值’,下标索引要用中括号。例如:
student_list = ['小明','小红','小王'] # 列表中括号
student_list[0] = '小月'
print(student_list)
四、查找项
1.遍历
遍历、迭代是指把一个sequence序列(可迭代的对象,如:列表)一次取出,例如:
student_list = ['小明','小红','小王']
for i in student_list:
print(i)
for i in [1,2,3,4]:
print(i)
2.通过下标访问
语法:列表[索引],例如:
list1 = [1,2,3]
list1[0] → 1
list1[-1] → 3 下标负数表示倒数第几项
3.列表长度(列表长度从1开始计算)
list1 = ['小明', '小红', '小王']
for i in range(0, len(list1)):
print(list1[i])
五、切片
语法:列表[起始下标start:结束下标end:步进]
索引(start) < 索引(end),如果相反的话截取出来的数值为空。步长为正时,从左向右取值;步长为负时,反向取值。
1.列表[索引start:索引end] 切割范围,左闭右开区间
list = [1,2,3,4,5]
a = list[0:2] # 左闭右开的区间
print(a)
2.切片参数可以为负值
list = [1,2,3,4,5]
a = list[-3:-1] # 当为负值时是倒序,输出为正序,注意取值范围左闭右开区间
print(a)
3.索引为0时,可以省略,例如:
list[0:2]等同于list[:2]
list = [1,2,3,4,5]
a = list[0:2] # 左闭右开的区间
print(a)
list = [1,2,3,4,5]
a = list[ :2] # 左闭右开的区间
print(a)
4.反向输出值
倒序索引为[列表长度:0:-1],其中(列表长度和0)都可省略
list = [1,2,3,4,5]
a = list[::-1] # a = [5:0:-1]
print(a)
5.索引起始值 < 结束值,返回为空,例如:
list = [1,2,3,4,5]
print(list[4: 0]) → []