是否有超出其max size属性时会引发异常的集合?
我知道它发生在Queue.Queue对象中,但是当我使用collections.deque时它没有引发异常,而是覆盖了最后一个元素。
提前致谢!
答案 0 :(得分:0)
您可以使用Queue
,如果已满,则会引发queue.Full
:
>>> import queue
>>> q = queue.Queue(3)
>>> q.put_nowait(1)
>>> q.put_nowait(2)
>>> q.put_nowait(3)
>>> q.put_nowait(4)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Users/ruediger/data/p3/Python-3.4.2/Lib/queue.py", line 187, in put_nowait
return self.put(item, block=False)
File "/Users/ruediger/data/p3/Python-3.4.2/Lib/queue.py", line 133, in put
raise Full
queue.Full