<[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] |I am week on functional programming, and having hard time | understanding this: | | class myPriorityQueue: | def __init__(self, f=lamda x:x): | self.A = [] | self.f = f | | def append(self, item) | bisect.insort(self.A, (self.f(item), item)) | ............ | | now I know we are inserting items(user defined type objects) in list A | base on sorting order provided by function A. | but what I don't understand is bisect command | what does bisect.insort(self.A, (self.f(item), item)) doing
The snippet is missing 'import bisect'. The module is documented in the Lib Ref. Or, in the interpreter, help(bisect.insort) redirects you to help(bisect.insort_right), which will answer your question. | isn't it is returning truple of (self.f(item), item)). no, see doc | why it is not | biset.insort(self.A, item) | A.sort(f) Efficiency, given that self.A is already sorted. tjr -- http://mail.python.org/mailman/listinfo/python-list