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 isn't it is returning truple of (self.f(item), item)). why it is not biset.insort(self.A, item) A.sort(f) thanks for your comments -- http://mail.python.org/mailman/listinfo/python-list