【问题标题】:How to split a deque in two [duplicate]如何将双端队列分成两部分[重复]
【发布时间】:2017-06-03 04:33:01
【问题描述】:

我正在写一些我经常弹出和附加的东西,并认为使用deque 是合适的。但是,在我的代码中的某处,我需要将 deque 分成两部分。

考虑dequed

from collections import deque

d = deque(range(4))

我想这样拆分deque

d[:2]

但我得到一个错误

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-29-cb523bbbf363> in <module>()
      3 d = deque(range(4))
      4 
----> 5 d[:2]

TypeError: sequence index must be integer, not 'slice'

我可以的

list(d)[:2]

[0, 1]

但是将其重新转换为列表只是为了对其进行切片似乎很荒谬。我错了吗?还是有别的办法?

【问题讨论】:

  • @heltonbiker 谢谢你找到这个。那是完全重复的

标签: python deque python-collections


【解决方案1】:

有了itertools.islice,你可以做到

deque(islice(d, 2))

【讨论】:

    猜你喜欢
    • 2021-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-24
    • 1970-01-01
    • 1970-01-01
    • 2020-12-17
    • 2019-11-05
    相关资源
    最近更新 更多