Ho un oggetto deque che contiene una grande quantità di dati. Voglio estrarre, ad esempio, 4096 elementi dal fronte della coda (lo sto usando come una sorta di FIFO). Sembra che ci dovrebbe essere modo di farlo senza dover iterare oltre 4096 richieste pop.Come posso pop() molti elementi da un deque?
È corretto/efficiente/stupido?
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())
Sì , è corretto. Sì, è ragionevolmente efficiente anche se può essere ulteriormente accelerato con metodi e itertools. No, non è stupido :-) –