Как я могу pop () много элементов из двухсторонней очереди?

У меня есть объект deque, который содержит большой объем данных. Я хочу извлечь, скажем, 4096 элементов из начала очереди (я использую его как своего рода FIFO). Похоже, должен быть способ сделать это без повторения более 4096 запросов pop.

Это правильно / эффективно / глупо?

A = arange(100000)
B = deque()
C = [] # List will do 
B.extend(A) # Nice large deque

# extract 4096 elements
for i in xrange(4096):
   C.append(A.popleft())
18
задан alexwlchan 27 March 2015 в 00:28
поделиться