列表是 Python 中的内置数据类型之一。Python 列表是括在方括号 [ ]
中的逗号分隔项序列。Python 列表中的项不必是相同的数据类型。
以下是 Python 列表的一些示例:
list1 = ["Rohan", "Physics", 21, 69.75]
list2 = [1, 2, 3, 4, 5]
list3 = ["a", "b", "c", "d"]
list4 = [25.50, True, -55, 1+2j]
列表是项目的有序集合。列表中的每个项目都有唯一的位置索引,从 0 开始。
Python 中的列表类似于 C、C++ 或 Java 中的数组。但是,主要区别在于,在 C/C++/Java 中,数组元素必须是同一类型。另一方面,Python 列表可能包含不同数据类型的对象。
Python 列表是可变的。可以使用其索引访问列表中的任何项目,并且可以对其进行修改。可以删除或添加列表中的一个或多个对象。列表可能在多个索引位置有相同的项目。
访问列表中的值
要访问列表中的值,请使用方括号以及索引进行切片以获取该索引处可用的值。例如:
list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5, 6, 7]
print("list1[0]: ", list1[0])
print("list2[1:5]: ", list2[1:5])
执行上述代码时,会产生以下结果:
list1[0]: physics
list2[1:5]: [2, 3, 4, 5]
更新列表
您可以通过在赋值运算符的左侧给出切片来更新列表中的单个或多个元素,并且可以使用 append()
方法向列表中添加元素。例如:
list = ['physics', 'chemistry', 1997, 2000]
print("Value available at index 2 : ")
print(list[2])
list[2] = 2001
print("New value available at index 2 : ")
print(list[2])
执行上述代码时,会产生以下结果:
Value available at index 2 :
1997
New value available at index 2 :
2001
删除列表元素
要删除列表元素,如果您确切知道要删除哪个元素,则可以使用 del
语句;如果您不知道,则可以使用 remove()
方法。例如:
list1 = ['physics', 'chemistry', 1997, 2000]
print(list1)
del list1[2]
print("After deleting value at index 2 : ")
print(list1)
执行上述代码时,会产生以下结果:
['physics', 'chemistry', 1997, 2000]
After deleting value at index 2 :
['physics', 'chemistry', 2000]
注意: remove()
方法将在后续章节中讨论。
Python 列表操作
在 Python 中,列表是一个序列。因此,我们可以使用 +
运算符连接两个列表,并使用 *
运算符连接列表的多个副本。成员运算符 in
和 not in
适用于列表对象。
Python 表达式 |
结果 |
描述 |
[1, 2, 3] + [4, 5, 6] |
[1, 2, 3, 4, 5, 6] |
级联 |
['嗨!'] * 4 |
['嗨!', '嗨!', '嗨!', '嗨!'] |
重复 |
3 in [1, 2, 3] |
真 |
会员资格 |
索引、切片和矩阵
因为列表是序列,所以列表的索引和切片工作方式与字符串相同。
假设以下输入:
L = ['spam', 'Spam', 'SPAM!']
Python 表达式 |
结果 |
描述 |
L[2] |
SPAM! |
偏移从零开始 |
L[-2] |
Spam |
负数:从右边数 |
L[1:] |
['Spam', 'SPAM!'] |
切片获取部分 |
Python 列表方法
Python 包括以下列表方法:
序号 |
方法及说明 |
1 |
list.append(object) |
2 |
list.clear() |
3 |
list.copy() |
4 |
list.count(object) |
5 |
list.extend(sequence) |
6 |
list.index(object) |
7 |
list.insert(index, object) |
8 |
list.pop(obj=list[-1]) |
9 |
list.remove(object) |
10 |
list.reverse() |
11 |
list.sort([key=func]) |
带有列表的内置函数
以下是我们可以与列表一起使用的内置函数:
序号 |
函数及说明 |
1 |
cmp(list1, list2) |
2 |
len(list) |
3 |
max(list) |
4 |
min(list) |
5 |
list(sequence) |