如何在python中深度复制队列
问题描述
如何在 python 中深度复制队列?谢谢
Hi How to deepcopy a Queue in python? Thanks
解决方案
queue
The queue
module in Python is used for synchronizing shared data between threads. It is not intended as a data structure and it doesn't support copying (not even shallow copy).
(.get
和.put
可以对一个Queue进行多次deepcopy,但是原来的Queue会被销毁.)
(It is possible to construct many deepcopy's of a Queue by .get
and .put
, but the original Queue will be destroyed.)
如果您想将队列(或堆栈)作为数据结构,使用 collections.deque
.如果您想要优先级队列,请使用 heapq
模块.deque 支持 deepcopy.heapq 由列表支持,因此也支持 deepcopy.
If you want to have a queue (or stack) as a data structure, use a collections.deque
. If you want a priority queue, use the heapq
module. The deque supports deepcopy. heapq is backed by a list, so deepcopy is also supported.
相关文章