欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

列表

程序员文章站 2022-07-09 15:50:48
...

列表

定义:原来的单值变量无法满足业务需求,需要一个容器来装内容
列表存储一系列有序的(有下标)数据,容器内可以保存整数,布尔,字符串,或其它容器

语法:中括号括住,逗号分隔。
创建:
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])  → []