Python 如何在不删除deque的情况下获取其第一个值?
我使用Python3.6.1,由于其方便性,我经常使用集合中的deque()。这一次,我需要得到deque的第一个值,并想知道这是否可能Python 如何在不删除deque的情况下获取其第一个值?,python,deque,Python,Deque,我使用Python3.6.1,由于其方便性,我经常使用集合中的deque()。这一次,我需要得到deque的第一个值,并想知道这是否可能 问题是,我可以使用.popleft(),但它最终会同时删除该值。我想到了list(deque01)[0],但我担心的是,当deque01很大时,它是否会消耗大量资源,或者获取第一个值的过程会重复很多次。有什么方法或技巧可以有效地做到这一点吗?对于deque数据结构,这通常被称为“peek”操作,在Python中,它只是用通常的数据模型的dunder实现的 以下
问题是,我可以使用
.popleft()
,但它最终会同时删除该值。我想到了list(deque01)[0]
,但我担心的是,当deque01很大时,它是否会消耗大量资源,或者获取第一个值的过程会重复很多次。有什么方法或技巧可以有效地做到这一点吗?对于deque
数据结构,这通常被称为“peek”操作,在Python中,它只是用通常的数据模型的dunder实现的
以下示例直接取自:
请注意,尽管界面看起来类似于列表,但deques只提供对最左侧或最右侧项目的快速访问。在中间访问数据比较慢,而不是一个列表,它很快就可以在任何地方索引。p>
>>> from collections import deque
>>> d = deque('ghi') # make a new deque with three items
>>> d[0] # peek at leftmost item
'g'
>>> d[-1] # peek at rightmost item
'i'