I had a similar problem when i was using asynchat.fifo, it had a list in the past now it has a deque. So in order to put something to zeroth location (to be compatible with python 2.3 and python 2.4) I did something like:

class fifo(asynchat.fifo):

    def __init__(self, list=None):
        asynchat.fifo.__init__(self, list)
        self.have_deque = hasattr(self.list, 'appendleft')

    def push_front(self, object):
        if self.have_deque:
            self.list.appendleft(object)
        else:
            self.list.insert(0, object)

Abdullah Yoldas



On 3/16/06, SA Trygubenko <[EMAIL PROTECTED]> wrote:
Dear All,

Python 2.4 (#1, Mar 22 2005, 21:42:42)
[GCC 3.3.5 20050117 (prerelease) (SUSE Linux)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import Queue
>>> q=Queue.Queue()
>>> type(q.queue)
<type 'collections.deque '>
>>>

q.queue used to be a list, and now it is something else?

I was using bisect module to implement min priority queue, as described
in python library reference (see
http://www.python.org/doc/2.3.5/lib/bisect-example.html). I have found
out that in Python 2.4 q.queue does not support "insert" anymore, which
breaks bisect. Please help!

Thank you,
Semen
--
http://mail.python.org/mailman/listinfo/python-list

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to