Looking at heapq, I see only nlargest/nsmallest provide a key= arg. What about other operations, such as heapify? Am I not understanding something? I suppose for other ops, such as heapify, I can only customize comparison by customizing the object comparison operators? -- Those who fail to understand recursion are doomed to repeat it