-
元素访问
-
Python为访问最后一个列表元素提供了一种特殊语法。通过将索引指定为-1,可让Python返回最后一个列表元素。
bicycles = ['trek','redline','specialized',4,5] print(bicycles[-1])
这段代码返回5。这种语法很有用,因为你经常需要在不知道列表长度的情况下访问最后的元素。这种约定也适用于其他负数索引。例如,索引-2返回倒数第二个列表元素,索引-3返回倒数第三个列表元素,依此类推。
补充:列表所存储的数据没有统一要求,可以存放任意基础数据类型
-
-
列表的数据形式(数组)
-
列表是一种动态数组,它可以根据需要自动调整大小。当向列表中添加元素时,Python 会自动为新元素分配内存空间,并更新列表的长度。例如:
my_list = [] print(len(my_list)) my_list.append(1) print(len(my_list))
这段代码将输出 0 和 1,因为在添加第一个元素后,列表的长度从 0 增加到 1。
与之相反,静态数组(array)是一种静态数据结构,它的大小在创建时就已经确定且只存在一种数据类型。当向静态数组中添加元素时,如果数组已满,Python 会抛出一个异常。
-
-
在列表中添加元素
- 附加:append()
这段代码将输出 [1, 2, 3]。
my_list = [] my_list.append(1) my_list.append(2) my_list.append(3) print(my_list)
- 插入:insert()
这段代码将输出 [1, 4, 2, 3]。
my_list = [1, 2, 3] my_list.insert(1, 4) print(my_list)
- 合并:extend()
这段代码将输出 [1, 2, 3, 4, 5, 6]。
my_list1 = [1, 2, 3] my_list2 = [4, 5, 6] my_list1.extend(my_list2) print(my_list1)
- 补充:+
这段代码将输出 [1, 2, 3, 4, 5, 6]。
my_list1 = [1, 2, 3] my_list2 = [4, 5, 6] my_list3 = my_list1 + my_list2 print(my_list3)
- 补充:*
这段代码将输出 [1, 2, 3, 1, 2, 3, 1, 2, 3]。
my_list = [1, 2, 3] my_list2 = my_list * 3 print(my_list2)
- 补充:列表推导式
这段代码将输出 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]。
my_list = [x for x in range(10)] print(my_list)
- 附加:append()
-
删除元素
- 删除元素:del
这段代码将输出 [2, 3, 4, 5]。
my_list = [1, 2, 3, 4, 5] del my_list[0] print(my_list)
- 删除元素:pop()
这段代码将输出 [2, 3, 4, 5]。
my_list = [1, 2, 3, 4, 5] my_list.pop(0) print(my_list)
- 删除元素:remove()
这段代码将输出 [2, 3, 4, 5]。
my_list = [1, 2, 3, 4, 5] my_list.remove(1) print(my_list)
- 删除元素:clear()
这段代码将输出 []。
my_list = [1, 2, 3, 4, 5] my_list.clear() print(my_list)
- 删除元素:del
-
组织列表
- 排序:sort()
这段代码将输出 [1, 2, 3, 4, 5]。
my_list = [5, 2, 3, 4, 1] my_list.sort() print(my_list)
- 排序:sorted()
这段代码将输出 [5, 2, 3, 4, 1] [1, 2, 3, 4, 5]。
my_list = [5, 2, 3, 4, 1] print(my_list,sorted(my_list))
- 反转:reverse()
这段代码将输出 [1, 4, 3, 2, 5]。 若要恢复对其再次反转即可。
my_list = [5, 2, 3, 4, 1] my_list.reverse() print(my_list)
- 长度:len()
这段代码将输出 5。
my_list = [5, 2, 3, 4, 1] print(len(my_list))
- 最大值:max()
这段代码将输出 5。
my_list = [5, 2, 3, 4, 1] print(max(my_list))
- 最小值:min()
这段代码将输出 1。
my_list = [5, 2, 3, 4, 1] print(min(my_list))
- 排序:sort()