import itertools
import json
import logging
import os
import time
from collections import deque
from six import iteritems, itervalues
from six.moves import queue as Queue
from pyspider.libs import counter, utils
from pyspider.libs.base_handler import BaseHandler
from .task_queue import TaskQueue
from collections import deque
deque
Returns a new deque object initialized left-to-right (using append()
) with data from iterable. If iterable is not specified, the new deque is empty.
Deques are a generalization of stacks and queues (the name is pronounced “deck” and is short for “double-ended queue”). Deques support thread-safe, memory efficient appends and pops from either side of the deque with approximately the same O(1) performance in either direction.
Though list
objects support similar operations, they are optimized for fast fixed-length operations and incur O(n) memory movement costs for pop(0)
and insert(0,v)
operations which change both the size and position of the underlying data representation.
返回一個(gè)新的先進(jìn)先出的列表對(duì)象 ,如果沒有聲明,這個(gè)列表是空的.
Deques是線程安全的.和list支持一樣的操作.
from collections import deque
for each in deque('asdfs'):
print each
run
a
s
d
f
s
[Finished in 0.0s]