什么是列表
列表是 Python 中最常用的数据类型之一。它是一种有序、可变,异构的数据集合,可以存储多个不同类型的元素。
列表的特点
列表是 Python 中的一种数据结构,具有以下特点:
- 有序性: 列表中的元素按照添加的顺序进行存储,每个元素都有一个对应的索引,可以通过索引访问和操作列表中的元素。
- 可变性: 列表是可变的,也就是说可以通过索引来修改、删除或插入元素。可以改变列表的长度、内容和顺序。
- 异构性: 列表中可以同时存储不同类型的数据,例如整数、字符串、浮点数、布尔值等。甚至可以存储其他列表或其他复杂的数据结构。
由于列表的有序性、可变性和多样化的数据类型,它是一种非常常用和灵活的数据结构,常用于存储和处理一组相关的数据。列表提供了丰富的方法和操作,使得对数据的管理和处理变得更加方便和高效。
列表的定义
字面量定义
Python 中使用中括号定义列表。
l1 = [] # 创建一个空列表
l2 = [1, 2, 3, "hello", True] # 创建一个包含多个元素的列表
由于列表具有可变性,所以空列表的定义是被允许且有意义的。
列表的构造方法定义
可能通过列表的构造方法定义列表。
当使用构造方法定义列表时,参数只能是可迭代的对象,构造方法会将参数中的元素构造成为列表的元素。
可以理解为将可迭代的对象强制类型转换为列表。
l1 = list("abc")
l2 = list((1,2,3))
l3 = list([1,2,3])
列表中元素的引用
列表同字符串,元组一样,也可以使用下标形式引用列表中的元素。并且,下标不能超过列表的元素个数减一,否则会抛出下标越界错误。
l = [1,2,3,4,5]
print(l[0])
print(l[3])
print(l[5])
列表中元素的修改
由于列表的可变特性,可以通过下标的方式,对列表中的元素进行修改。
l = [1,2,3,4,5]
l[0] = 111
l[3] = 444
列表的切片操作
列表的切片操作同字符串,元组一致
l = [1,2,3,4,5]
print(l[0:3])
print(l[:3])
print(l[3:])
print(l[:])
print(l[::-1])
列表的用途
列表在 Python 中具有广泛的用途,主要包括以下几个方面:
- 存储一组相关的数据: 列表是一种有序的数据结构,可以用于存储一组相关的数据,如学生的成绩、员工的信息、商品的价格等。通过将相关的数据放入列表中,可以方便地进行统一的管理和处理。
- 数据的容器: 列表提供了便捷的操作方法,可以进行遍历、搜索、插入和删除等操作。通过索引,可以访问列表中的特定元素;通过遍历,可以逐个处理列表中的元素;通过方法,可以在列表中插入新元素、删除指定元素等。
- 算法和数据结构中的应用: 列表是一种重要的数据结构,广泛应用于算法和数据结构的实现中。例如,列表可以用于实现栈(Stack)、队列(Queue)、链表(LinkedList)等数据结构,还可以用于排序算法、搜索算法等的实现。
-
# 列表的使用 # 有序可变异构 def list_info():# 定义列表# 字面量方式定义l1 = []print(l1)print(type(l1))l2 = [1, 1, 1, 1, 1, 1, 2, 3, "a", "b", "c", (1, 2), [3, 4]]print(l2)print(type(l2))# 使用构造方法定义l1 = list("abc")print(l1)l2 = list((1, 2, 3, 4))print(l2)l3 = list([1, 2, 3, 4])print(l3)l1 = [1, 2, 3, 4, 5]print(l1[0])print(l1[3])# print(l1[5])l2 = [1, 1, 1, 1, 1, 2, 3, "a", "b", "c", (1, 2), [3, 4]]print(l2[10][1])print(l2[11][1])# 列表元素修改l1 =[1,2,3]print(l1)l1[0] =222print(l1)print(type(l1))# 列表切片l1 = [1,2,3,4,5,6,7,8,9]print(l1[0:4])print(l1[:5])print(l1[3:])print(l1[::2])print(l1[::-1])list_info()