how to implement a queue-like container with sort function

Chris Angelico rosuav at gmail.com
Mon Dec 2 07:04:51 EST 2013


On Mon, Dec 2, 2013 at 10:58 PM, Ned Batchelder <ned at nedbatchelder.com> wrote:
> Yes, a Queue object has a queue attribute:
>
>     >>> import Queue
>     >>> q = Queue.Queue()
>     >>> q.queue
>     deque([])
>
> But you shouldn't use it.  It's part of the implementation of Queue, not
> meant for you to use directly.  In particular, if you use it directly, you
> are skipping all synchronization, which is the main reason to use a Queue in
> the first place.

I should apologize here; when the OP said "queue", I immediately
noticed that I could import that and use it, and mistakenly started my
testing on that, instead of using the deque type. It's deque that
should be used here. Queue is just a wrapper around deque that adds
functionality that has nothing to do with what's needed here.

ChrisA



More information about the Python-list mailing list