将deque对象转换为列表

57 投票
2 回答
60433 浏览
提问于 2025-04-16 16:21

目前,我从我的存储中获取“列表”数据,然后将它们放入“双端队列”中,以便处理这些数据。

在处理完获取的数据后,我需要把它们放回存储中。只要我不被迫使用Python的标准“列表”对象来保存这些数据,这就不是问题。

存储服务:Google Appengine。

我的解决方法是:

dequeObj = deque(myData)
my_list = list()
for obj in dequeObj:
    my_list.append(obj)

但这看起来不是很理想。

2 个回答

0

因为双端队列(deque)是可以被遍历的,所以你可以把它的内容直接放到一个列表里。

dq = collections.deque([1, 2, 3])
lst = [*dq]
lst             # [1, 2, 3]

如果你想创建一个新的列表对象,你也可以把双端队列放到一个变量里。

*lst, = dq
lst             # [1, 2, 3]
117
>>> list(collections.deque((1, 2, 3)))
[1, 2, 3]

当然可以!请把你想要翻译的内容发给我,我会帮你用简单易懂的语言解释清楚。

撰写回答