Python 中的列表 (list)。 列出函数和方法

在编程中,列表可能与数组一样有用的数据结构。 什么是列表,如何创建它们? 如何在 Python 中使用列表? 您将从我们的文章中了解到这一点。

Python 中的列表是什么?

Python 中的列表 (list)。 列出函数和方法
Python 数据类型:列表

列表可以部分地用数组来标识,但列表的区别和优势(否则也称为列表)是它们可以组合不同的数据类型。 也就是说,列表为存储任何对象序列开辟了更多可能性。 称为列表的变量包含对内存中结构的引用,该结构包含对替代结构的引用。

Python 中的列表是混合类型的对象的有序集合,可以修改并且其对象可能不同。

这是什么意思? 让我们详细看一下定义。

列表的大小可以更改、缩小、添加新行。 您还可以更改列表的整个结构。 请记住,每次使用列表中的方法时,都会更改原始列表,而不是副本。

为了更清楚起见,您可以将 Python 中的列表视为需要在商店中购买的产品列表。 如果在制定购物计划时,所有必需的项目都位于一个在另一个之下,并且每个项目都有自己的行,那么 Python 中的清单包含用逗号分隔的所有元素并用方括号括起来,以便 Python 可以理解此处列出了一份清单。 元素用引号括起来。 这是一个强制性条件,因为每个元素都是单独的一行。

创建列表的方法

继续经典示例,让我们创建一个列表,我们将在未来使用和修改。 有几种方法可以生成列表。

其中之一是应用程序 内置函数 list( ). 为此,您需要处理任何可以迭代的对象(字符串、元组或现有列表)。 在这种情况下,一个字符串。

这是最后会发生的事情:

>>> list('list') ['c', 'n', 'i', 'c', 'o', 'to']

第二个例子表明列表可以包含无限数量的非常不同的对象。 此外,列表可以保持为空。

>>> s = [] # 空列表 >>> l = ['s', 'p', ['isok'], 2] >>> s [] >>> l ['s', 'p' , ['isok'], 2]

接下来,第三种形成列表的方式是所谓的 列表生成器.

列表生成器是用于创建列表的语法结构。 它类似于 for 循环。

>>> c = [c * 3 for c in 'list'] >>> c ['llll', 'iii', 'sss', 'ttt']

它还可以用于创建更庞大的结构:

>>> c = [c * 3 for c in 'list' if c != 'i'] >>> c ['lll', 'sss', 'ttt'] >>> c = [c + d for c in 'list' if c != 'i' for d in 'spam' if d != 'a'] >>> c ['ls', 'lp', 'lm', 'ss', 'sp' , 'sm', 'ts', 'tp', 'tm']

但是,在编译多个列表时,这种生成方法并不总是有效的。 因此,建议使用 for 循环来生成列表。

如果您需要引用列表中的任何元素,则使用索引。 每个元素都有自己的索引。

索引是列表中元素的编号。

如果要使用重复的相同元素填充列表,则使用 * 符号。 例如,您需要在列表中添加三个相同的数字:[100] * 3。

列出函数

功能 ——这也许是 Python 相对于其他编程语言的主要优势。 基本的内置函数可以应用于列表。

考虑其中最受欢迎的:

  • 列表(范围()) – 如果任务是创建一个顺序列表,则使用范围函数。 该函数有以下形式:
  1. 范围(结束)。 当需要创建从零到有限数的列表时使用它。
  2. 范围(开始,结束)。 指定了开始和结束编号。
  3. 范围(开始,结束,步骤)。 step 参数指定选择特性。 例如,如果您需要从 1 到 21 的序列中选择每五个数字,则生成的列表将如下所示:[10,15]。

range 函数可以显着减少代码量。

  • 亚麻(清单) - 允许您找出列表中有多少元素。
  • 排序(列表,[键]) – 按升序对列表中的对象进行排序。
  • 最大值(列表) – 返回最大的元素。
  • 分钟(列表) – 相反函数 – 允许您返回具有最小值的元素。

您还可以使用其他内置函数:

  • 列表(元组) – 将元组对象转换为列表。
  • 总和(列表) – 如果所有值都是数字,则对列表中的所有元素求和,适用于整数和小数。 然而,她并不总是做对。 如果列表中有非数字元素,该函数将抛出错误:“TypeError: unsupported operand type(s) for +: 'int' and 'str'”。

列出方法

Python 中的列表 (list)。 列出函数和方法
Python 方法列表

让我们回到我们在商店中购买的商品列表,并将其命名为 shoplist:

购物清单 = []

接下来,考虑列出方法:

  • 附加(项目) – 在它的帮助下,您可以将元素添加到列表中。 在这种情况下,新元素将位于末尾。

让我们用正确的产品填写我们的新清单:

shoplist.append(面包)

shoplist.append(牛奶)

  • 名单。延长(A) - 添加“列表到列表”。 此功能可以节省时间,因为您可以同时添加多个项目。 假设我们已经有一个水果列表,我们需要将它们添加到主列表中。

shoplist.extend(水果)

  • 插入(索引,项目) – 在具有指定索引的元素上插入指定索引之前的指定值。
  • lcount(项目) – 显示元素的重复次数。
  • 名单。消除(项目) 是相反的函数 名单。附加 (x). 它可用于删除任何元素。 如果选中的项目不在列表中,则报错。
  • 流行([索引]) – 移除选中的元素并以同样的方式返回。 如果未指定元素,则从列表中删除最后一个元素。
  • 排序([键]) – 将列表中的元素按升序排列,但您也可以指定一个函数。
  • 索引(项目) – 显示第一个选定元素的索引。
  • 您可以使用方法展开列表,即镜像其所有元素 反向(列表). 最后一个元素成为第一个元素,倒数第二个元素成为第二个元素,依此类推。
  • 使用命令创建列表的副本 复制(列表).
  • 深拷贝(列表) – 深度复制。
  • 使用该方法删除所有列表元素 清晰的列表).

值得注意的是,列表方法与字符串方法的不同之处在于它们立即改变列表,即不需要返回执行结果。

>>> l = [1, 2, 3, 5, 7] >>> l.sort() >>> l [1, 2, 3, 5, 7] >>> l = l.sort() > >> 打印(l) 无

以下是使用列表的示例:

>>> a = [66.25, 333, 333, 1, 1234.5] >>> print(a.count(333), a.count(66.25), a.count('x')) 2 1 0 >>> a.insert(2, -1) >>> a.append(333) >>> a [66.25, 333, -1, 333, 1, 1234.5, 333] >>> a.index(333) 1 >> > a.remove(333) >>> a [66.25, -1, 333, 1, 1234.5, 333] >>> a.reverse() >>> a [333, 1234.5, 1, 333, -1, 66.25 ] >>> a.sort() >>> a [-1, 1, 66.25, 333, 333, 1234.5]

发表评论