Python自动化办公应用学习笔记10——基本数据类型之列表

1.列表类型和操作

1.1 列表类型

· 列表 (list) 是包含 0个或多个元素有序集合

· 列表属于 序列类型

· 与元组不同,列表的 长度内容 都是 可以改变 的。可以 自由地 在列表中 增加、删除或修改 元素。

· 列表 没有长度限制

· 列表中的 元素类型可以各不相同,使用非常 灵活

· 由于列表是序列类型,它也支持:

o 成员关系操作符 (in)

o 长度计算函数 (len())

o 切片操作 ([])

· 列表可以同时使用 正向递增序号 (从0开始) 和 反向递减序号 (从-1开始)。

· 可以使用标准比较操作符 (<, <=, ==, !=, >=, >) 比较列表。列表比较是 逐个元素 进行的。

· 列表用 方括号 [] 表示。

· 可以通过 list() 函数 将元组、字符串等其他类型的数据转换成列表

· 直接使用 list() 函数(不传参数)会 返回一个空列表

· 列表必须通过 实际赋值数据 来创建。简单地将一个列表变量赋值给另一个变量(如 new_list = old_list)并不会创建一个新的列表对象,这两个变量会指向内存中的同一个列表。

1.2 列表类型的操作

· 列表是序列类型,因此序列类型的操作符和函数都可以用于列表。

· 由于列表是 可变的,它还有以下 14个常用方法 (注意:del 是语句,不是方法):

操作或方法

描述

ls[i] = x

将列表 ls第 i 个位置的元素 替换为 x

ls[i:j:k] = lt

用列表 lt 中的元素 替换 ls 中切片 [i:j:k] 对应的子列表。

del ls[i]

删除 列表 ls第 i 个位置的元素

del ls[i:j:k]

删除 列表 ls从 i 到 j (步长 k) 切片对应的元素

ls += lt

原地更新 列表 ls,将列表 lt 中的 所有元素添加到 ls 末尾

ls *= n

原地更新 列表 ls,将其中的元素 重复 n 次

ls.append(x)

在列表 ls末尾添加 一个元素 x

ls.clear()

删除 列表 ls 中的 所有元素,使其变为空列表。

ls.copy()

创建并返回 列表 ls 的一个 浅拷贝副本 (新列表)。

ls.insert(i, x)

在列表 ls第 i 个位置之前插入 元素 x

ls.pop(i)

取出并返回 列表 ls第 i 个位置的元素,同时 从列表中删除它。省略 i 时默认弹出最后一个元素 (i=-1)。

ls.remove(x)

删除 列表 ls第一个出现的元素 x。如果 x 不存在会引发错误。

ls.reverse()

原地 将列表 ls 中的元素 顺序反转

ls.sort()

原地 对列表 ls 中的元素进行 排序 (默认升序)。

· 注意: 当使用切片赋值 (ls[i:j:k] = lt) 来改变列表时:

o Python 不要求 右侧的列表 lt 的长度必须和左侧切片的长度相同。

o 遵循 “多增少减” 原则:如果用 更长的列表 lt 赋值,原列表 ls在切片位置插入更多元素;如果用 更短的列表 lt 赋值,原列表 ls在切片位置删除元素(被替换的部分变短了)。

o 这实际上提供了一种 插入或删除 列表中 连续一段元素 的方法。

· 与元组一样,可以使用 for 循环 遍历 列表中的所有元素:

for <变量名> in <列表名>:

<语句块> # 在语句块中可以使用<变量名>访问当前元素

总结:
列表 (list) 是一个 极其灵活 的数据结构。它能处理 任意长度混合类型 的数据,并提供了 丰富的基础操作和方法。当你的程序需要管理 一组相关的数据 时,列表通常是 首选 的数据类型,因为它支持方便的 增、删、改 操作。

原文链接:,转发请注明来源!