Python 中的 Deque2024 年 8 月 29 日 | 阅读 6 分钟 Queue 是一个核心库,它允许用户根据 **FIFO (先进先出)** 原则定义列表。相比之下,Python 中的 **Deque** 则遵循相反的原则:**LIFO (后进先出)** 队列。在接下来的教程中,我们将通过一些示例来理解 Python 中的 Deque。 那么,让我们开始吧。 理解 Python 中的 DequeDeque,也称为 **双端队列**,具有从任一端插入和删除数据元素的属性。**deque** 模块是称为 collections 的库的一部分。它包含了可以与参数直接调用的添加和删除数据元素的属性。为了声明一个 deque,我们必须首先导入 **collections** 库。 让我们看下面的语法来理解 **deque** 模块在 Python 中的工作原理。 语法 说明 在上面的代码片段中,我们从 **collections** 库导入了 **deque** 模块,并通过将列表名称(在本例中为 **list_name**)赋值给 **deque()** 模块来声明了 deque。这里我们还可以注意到,我们不需要任何类就可以实现这些内置方法。它们可以直接实现。 让我们看一个基于 **deque** 模块的简单示例。 示例 输出 deque(['Apple', 'Mango', 'Peaches', 'Banana', 'Papaya']) 说明 在上面的示例中,我们从 **collections** 库导入了 **deque** 模块。然后,我们使用 **deque** 模块将水果列表定义为一个 deque,指定了一些水果的名称。然后,我们打印了声明的 Deque。结果,包含一串水果名称的已声明 Deque 成功打印。 现在,让我们来理解 Deque 的各种操作。 Deque 的一些操作Deque 中可以使用各种操作。其中一些列在下面并附有描述
现在让我们看一些基于 **deque** 模块的示例。 示例 输出 The deque after appending at right: deque([10, 20, 30, 40, 50, 60]) The deque after appending at left: deque([70, 10, 20, 30, 40, 50, 60]) The deque after removing from right: deque([70, 10, 20, 30, 40, 50]) The deque after removing from left: deque([10, 20, 30, 40, 50]) 说明 在上面的代码片段中,我们导入了 **collections** 库并声明了一个 deque。然后,我们使用 **append()** 和 **appendleft()** 等操作将一些数据元素插入到 deque 的两端,并为用户打印了修改后的 deque。类似地,我们然后使用了 **pop()** 和 **popleft()** 等操作从 deque 的两端删除数据元素,并为用户打印了结果 deque。 示例 输出 The first occurs of 'Feb' at a position: 4 The deque after inserting 'Jan' at 4th position: deque(['Jan', 'Feb', 'Mar', 'Jan', 'Mar', 'Feb', 'April', 'Feb']) The count of 'Feb' in deque: 3 The deque after removing the first occurrence of 'Mar': deque(['Jan', 'Feb', 'Jan', 'Mar', 'Feb', 'April', 'Feb']) 说明 在上面的代码片段中,我们再次导入了 **collections** 库并声明了一个 deque。然后,我们使用 **index()** 操作在索引号 **2** 和 **7** 之间查找数据元素 **'Feb'** 的第一次出现。然后,我们使用 **insert()** 操作在第 4 个位置插入数据元素 **'Jan'**。然后,我们使用 **count()** 操作来计算数据元素 **'Feb'** 在 deque 中的出现次数。最后,我们使用 **remove()** 操作从 deque 中删除数据元素 **'Mar'** 的第一次出现,并为用户打印了结果 deque。 下一主题Python 中的字典推导式 |
GitHub, Inc 提供了一个在线托管服务,用于使用 Git 进行应用程序开发和变更控制。它提供了每个软件功能请求、项目访问控制、持续集成、任务管理、错误跟踪以及 Git 的分布式版本控制。它是一家总部位于...的微软公司。
7 分钟阅读
在本教程中,我们将使用 Python 编程语言学习 KMP 算法。该算法主要用于以 O(n) 复杂度搜索模式或子字符串。该算法可能会在技术面试中被问到,以测试开发人员的能力。KMP 算法 KMP 代表 Knuth-Morris-Prat...
阅读 2 分钟
像 Python 这样的语言有丰富的有趣概念,旨在简化程序员的工作。在本教程中,我们将学习 Python 闭包。但在那之前,让我们回顾一下嵌套函数,看看它们如何成为理解的先决条件...
阅读 3 分钟
在 Python 中,head() 函数通常用于从列表或 DataFrame 中检索前 n 个项目。列表的 head() 函数 在 Python 中,您可以将 head() 函数与列表一起使用以检索列表中的前 n 个项目。head() 函数不是...
阅读 3 分钟
Python 中的 datetime 模块是标准库的一部分,它提供了用于处理日期和时间的类和函数。datetime 模块特别适用于以下任务:从字符串解析日期和时间 将日期和时间格式化为字符串 对日期和时间进行算术运算...
7 分钟阅读
介绍 在 Python 中,您可以使用一种简单的方法来识别在比赛中淘汰最多人的参赛者。创建一个字典,以参赛者名称为键,以他们相应的获胜次数为值,来组织您的比赛数据。然后,创建两个...
阅读 4 分钟
?在 Python 中,有几种方法可以删除列表中的最后一个元素。一种方法是使用 pop() 方法。此方法默认删除列表的最后一个元素,或者您可以指定要删除的元素的索引。例如:my_list...
阅读 3 分钟
此模块提供了一个用于压缩和解压缩文件的简单接口,类似于GNU工具gzip和gunzip。gzip模块提供了GzipFile类,以及open()、compress()和decompress()便捷函数。GzipFile类读取和写入gzip格式...
阅读 13 分钟
?在 Python 中,标识符是分配给变量、函数、类或其他对象的名称。这是一种为人可读的名称,并在程序中用于引用该对象。在 Python 中,标识符...
阅读 3 分钟
简介:在本文中,我们将讨论如何检查 Python 中的 10 位手机号码验证。这里我们只检查 10 位手机号码的验证。手机号码是 7894561230。验证手机号码有一些标准,即 - 第一位数字……
7 分钟阅读
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India