From 8158e849305d0e0ab3e19cdc93a86bb7d5fc0651 Mon Sep 17 00:00:00 2001 From: Raymond Hettinger Date: Mon, 6 Sep 2004 07:04:09 +0000 Subject: [PATCH] Fix erroneous docstring comment. --- Doc/lib/libheapq.tex | 5 +++-- Lib/heapq.py | 5 +++-- Modules/_heapqmodule.c | 5 +++-- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/Doc/lib/libheapq.tex b/Doc/lib/libheapq.tex index edacf791587..55ef6412e3a 100644 --- a/Doc/lib/libheapq.tex +++ b/Doc/lib/libheapq.tex @@ -60,9 +60,10 @@ This is more efficient than \function{heappop()} followed by \function{heappush()}, and can be more appropriate when using a fixed-size heap. Note that the value returned may be larger than \var{item}! That constrains reasonable uses of this routine -unless written as part of a larger expression: +unless written as part of a conditional replacement: \begin{verbatim} - result = item <= heap[0] and item or heapreplace(heap, item) + if item > heap[0]: + item = heapreplace(heap, item) \end{verbatim} \end{funcdesc} diff --git a/Lib/heapq.py b/Lib/heapq.py index 9fb4e708240..14a00dc04b8 100644 --- a/Lib/heapq.py +++ b/Lib/heapq.py @@ -154,9 +154,10 @@ def heapreplace(heap, item): This is more efficient than heappop() followed by heappush(), and can be more appropriate when using a fixed-size heap. Note that the value returned may be larger than item! That constrains reasonable uses of - this routine unless written as part of a larger expression: + this routine unless written as part of a conditional replacement: - result = item <= heap[0] and item or heapreplace(heap, item) + if item > heap[0]: + item = heapreplace(heap, item) """ returnitem = heap[0] # raises appropriate IndexError if heap is empty heap[0] = item diff --git a/Modules/_heapqmodule.c b/Modules/_heapqmodule.c index 13e6a3d6040..192e843690a 100644 --- a/Modules/_heapqmodule.c +++ b/Modules/_heapqmodule.c @@ -186,8 +186,9 @@ PyDoc_STRVAR(heapreplace_doc, This is more efficient than heappop() followed by heappush(), and can be\n\ more appropriate when using a fixed-size heap. Note that the value\n\ returned may be larger than item! That constrains reasonable uses of\n\ -this routine unless written as part of a larger expression:\n\n\ - result = item <= heap[0] and item or heapreplace(heap, item)\n"); +this routine unless written as part of a conditional replacement:\n\n\ + if item > heap[0]:\n\ + item = heapreplace(heap, item)\n"); static PyObject * heapify(PyObject *self, PyObject *heap)