List列表是使用[]进行定义的。可以在列表中添加任何类型的数据,各个值使用逗号隔开。列表属于序列,支持序列的任何操作,包括索引,切片,加,乘,检查成员。

1.创建空列表,有两种方法:直接使用[]定义,使用list()定义

在这里插入图片描述

# 1.创建空列表,有两种方法:直接使用[]定义,使用list()定义
list1 = []
list2 = list()

print(list1)
print(list2)

2.列表支持的相关操作:索引,切片,加,乘,检查成员

a.通过数字索引来取值

列表的索引可以是正向索引,也可以是反向索引。正向索引是从0开始的,即第一个元素的索引是0,第二个元素的索引是1,以此类推。反向索引是从-1开始的,即最后一个元素是-1,倒数第二个元素是-2,以此类推。
需要注意的是,使用索引时,不要超出索引边界,否则会报错。

# 通过数字索引来取值,索引从0开始, 即第一个元素,索引是0,第二个是1,以此类推
list1 = ['zhangsan', 'lisi', 'haha', None, True]

print(list1[1])  # 取出列表中的第二个元素
print(list1[-1])  # 取出列表中的最后一个元素

在这里插入图片描述

b.通过切片取值

通过切片取值时,有一些特点,如下:
1.取头不取尾
2.开始索引是0时,可以省略
3.反向索引,开始索引是-1时,可以省略
4.取出全部时,开始和结束索引都省略
5.有步长时,则代表每多少个元素里取出一个
6.切片之后,取出的也是列表

print(list1[1:3])  # 切片时,取头不取尾。如右侧是取出列表中的第二、第三个元素,索引为3的第四个元素则不取。

print(list1[:3])  # 取出第一到第三个元素。通过切片时,如果从第一个元素开始,则可以省略。

print(list1[:-3])  # 如果使用反向索引,通过切片操作时,-1可以省略。

print(list1[:])  # 从头取到尾时,开始索引和结束索引均可以省略。

print(list1[::2])  # 步长为2,代表每2个元素,取出第一个

在这里插入图片描述

c.列表相加:直接使用+

list1 = ['zhangsan', 'lisi', 'haha', None, True]
list2 = ['new']

list3 = list1 + list2

print(list3)

在这里插入图片描述

d.列表相乘

list1 = ['zhangsan', 'lisi', 'haha', None, True]
list2 = ['new']

list3 = list1 * 2

print(list3)

在这里插入图片描述

e.元素检查:用in检查元素是否在列表中

list1 = ['zhangsan', 'lisi', 'haha', None, True]

print('haha' in list1)
print('ee' in list1)

在这里插入图片描述

3.列表相关方法

append方法:在列表末尾追加新的元素

list1 = ['zhangsan', 'lisi', 'haha', None, True]

# append 是在列表末尾追加新的元素
list1.append("new")
print(list1)

在这里插入图片描述

extend 在列表末尾,一次性追加另外一个列表的值

list1 = ['zhangsan', 'lisi', 'haha', None, True]
list2 = ['eee', 'fff']

# extend 在列表末尾,一次性追加另外一个列表的元素
list1.extend(list2)
print(list1)

在这里插入图片描述

insert方法,将指定元素插入到列表的指定位置

list1 = ['zhangsan', 'lisi', 'haha', None, True]

list1.insert(2, "insert obj")  # 将 "insert obj"插入到列表的第2个索引处插入
print(list1)

在这里插入图片描述

pop方法,删除索引对应的元素。如果方法内不写索引值,默认删除最后一个

list1 = ['zhangsan', 'lisi', 'haha', None, True]

list1.pop(4)  # 删除索引尾4的元素
list1.pop()  # 默认删除最后一个元素
print(list1)

在这里插入图片描述

还可以使用del方法,进行删除列表中的元素

list1 = ['zhangsan', 'lisi', 'haha', 'haha', 'delete']

# del 方法删除元素
del list1[-1]  # 通过del方法,删除列表中最后一个元素
print(list1)

在这里插入图片描述

remove方法,删除列表中第一个匹配的元素。如下,有多个haha值,但只删除第一个:

list1 = ['zhangsan', 'lisi', 'haha', None, True, 'haha']

list1.remove('haha')
print(list1)

在这里插入图片描述

sort方法,对列表进行排序

list1 = ['zhangsan', 'lisi', 'haha', 'haha']

list1.sort()  # 默认升序排序
print(list1)

list1.sort(reverse=True)  # reverse=True 则降序排序
print(list1)

list1.sort(reverse=False)  # reverse=False 则升序排序
print(list1)

在这里插入图片描述
使用sort方法时,需要注意列表中的元素的数据类型要保持一致,否则会报错
在这里插入图片描述

reverse方法,反转列表中的元素

list1 = ['zhangsan', 'lisi', 'haha', 'haha']
# reverse 反转列表中的元素
list1.reverse()
print(list1)

在这里插入图片描述

index方法,查找元素在列表中匹配到的第一个元素的索引

list1 = ['zhangsan', 'lisi', 'haha', 'haha']

# index,在列表索引为0-3直接的元素中查找haha查找到则返回index,查找不到,报错
index1 = list1.index('haha', 0, 3)  # 0 和 3 为开始索引和结束索引,为可选,不写则默认整个列表

print(index1)

在这里插入图片描述

count方法,统计元素在列表中出现的次数

list1 = ['zhangsan', 'lisi', 'haha', 'haha']

# reverse 反转列表中的元素
cou = list1.count('haha')
print(cou)

在这里插入图片描述

len方法,统计列表中元素个数

list1 = ['zhangsan', 'lisi', 'haha', 'haha', 'delete']

print(len(list1))  # 统计结果为5

在这里插入图片描述

使用等于号,直接赋值,替换原来的值

list1 = ['zhangsan', 'lisi', 'haha', None, True]

# = 可以直接赋值
list1[2] = 'new haha'
print(list1)

在这里插入图片描述

list(),将元组转化为列表

# 定义一个元组
t = ('zhangsan', 'lisi', 'haha', 'haha', 'delete')

s = list(t)  # 通过list()将元组转化为列表
print(s)

在这里插入图片描述

还可以通过max() 、min()函数,获取列表中的最大值和最小值。

# 定义一个元组
t = (123, 456, 789)
s = list(t)  # 转化为列表

print(max(s))  # 取出最大值
print(min(s))  # 取出最小值

在这里插入图片描述

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐