Merged revisions 67326,67498,67531-67532,67538,67553-67554,67556-67557 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r67326 | benjamin.peterson | 2008-11-22 02:59:15 +0100 (Sat, 22 Nov 2008) | 1 line
backport r67325: make FileIO.mode always contain 'b'
........
r67498 | raymond.hettinger | 2008-12-03 16:42:10 +0100 (Wed, 03 Dec 2008) | 1 line
Backport r67478
........
r67531 | georg.brandl | 2008-12-04 19:54:05 +0100 (Thu, 04 Dec 2008) | 2 lines
Add reference to enumerate() to indices example.
........
r67532 | georg.brandl | 2008-12-04 19:59:16 +0100 (Thu, 04 Dec 2008) | 2 lines
Add another heapq example.
........
r67538 | georg.brandl | 2008-12-04 22:28:16 +0100 (Thu, 04 Dec 2008) | 2 lines
Clarification to avoid confusing output with file descriptors.
........
r67553 | georg.brandl | 2008-12-05 08:49:49 +0100 (Fri, 05 Dec 2008) | 2 lines
#4408: document regex.groups.
........
r67554 | georg.brandl | 2008-12-05 08:52:26 +0100 (Fri, 05 Dec 2008) | 2 lines
#4409: fix asterisks looking like footnotes.
........
r67556 | georg.brandl | 2008-12-05 09:02:17 +0100 (Fri, 05 Dec 2008) | 2 lines
#4441: improve doc for os.open() flags.
........
r67557 | georg.brandl | 2008-12-05 09:06:57 +0100 (Fri, 05 Dec 2008) | 2 lines
Add an index entry for "subclassing immutable types".
........
diff --git a/Doc/library/heapq.rst b/Doc/library/heapq.rst
index 5cf8163..2190b80 100644
--- a/Doc/library/heapq.rst
+++ b/Doc/library/heapq.rst
@@ -88,6 +88,21 @@
>>> print data == ordered
True
+Using a heap to insert items at the correct place in a priority queue:
+
+ >>> heap = []
+ >>> data = [(1, 'J'), (4, 'N'), (3, 'H'), (2, 'O')]
+ >>> for item in data:
+ ... heappush(heap, item)
+ ...
+ >>> while heap:
+ ... print heappop(heap)[1]
+ J
+ O
+ H
+ N
+
+
The module also offers three general purpose functions based on heaps.
diff --git a/Doc/library/os.rst b/Doc/library/os.rst
index 1cb450b..6136e41 100644
--- a/Doc/library/os.rst
+++ b/Doc/library/os.rst
@@ -681,10 +681,11 @@
:func:`fdopen`, or :data:`sys.stdout` or :data:`sys.stderr`, use its :meth:`write`
method.
-The following data items are available for use in constructing the *flags*
-parameter to the :func:`open` function. Some items will not be available on all
-platforms. For descriptions of their availability and use, consult
-:manpage:`open(2)`.
+The following constants are options for the *flags* parameter to the
+:func:`open` function. They can be combined using the bitwise OR operator
+``|``. Some of them are not available on all platforms. For descriptions of
+their availability and use, consult the :manpage:`open(2)` manual page or the
+respective documentation for your operating system.
.. data:: O_RDONLY
@@ -695,8 +696,7 @@
O_EXCL
O_TRUNC
- Options for the *flag* argument to the :func:`open` function. These can be
- combined using the bitwise OR operator ``|``. Availability: Unix, Windows.
+ These constants are available on Unix and Windows.
.. data:: O_DSYNC
@@ -708,8 +708,7 @@
O_SHLOCK
O_EXLOCK
- More options for the *flag* argument to the :func:`open` function. Availability:
- Unix.
+ These constants are only available on Unix.
.. data:: O_BINARY
@@ -720,8 +719,7 @@
O_SEQUENTIAL
O_TEXT
- Options for the *flag* argument to the :func:`open` function. These can be
- combined using the bitwise OR operator ``|``. Availability: Windows.
+ These constants are only available on Windows.
.. data:: O_ASYNC
@@ -730,8 +728,8 @@
O_NOFOLLOW
O_NOATIME
- Options for the *flag* argument to the :func:`open` function. These are
- GNU extensions and not present if they are not defined by the C library.
+ These constants are GNU extensions and not present if they are not defined by
+ the C library.
.. data:: SEEK_SET
diff --git a/Doc/library/re.rst b/Doc/library/re.rst
index c9466af..916feca 100644
--- a/Doc/library/re.rst
+++ b/Doc/library/re.rst
@@ -750,6 +750,11 @@
were provided.
+.. attribute:: RegexObject.groups
+
+ The number of capturing groups in the pattern.
+
+
.. attribute:: RegexObject.groupindex
A dictionary mapping any symbolic group names defined by ``(?P<id>)`` to group
diff --git a/Doc/library/subprocess.rst b/Doc/library/subprocess.rst
index 42e50f6..dae582c 100644
--- a/Doc/library/subprocess.rst
+++ b/Doc/library/subprocess.rst
@@ -207,7 +207,7 @@
*input* argument should be a string to be sent to the child process, or
``None``, if no data should be sent to the child.
- :meth:`communicate` returns a tuple ``(stdout, stderr)``.
+ :meth:`communicate` returns a tuple ``(stdoutdata, stderrdata)``.
Note that if you want to send data to the process's stdin, you need to create
the Popen object with ``stdin=PIPE``. Similarly, to get anything other than
@@ -358,8 +358,8 @@
print >>sys.stderr, "Execution failed:", e
-Replacing os.spawn\*
-^^^^^^^^^^^^^^^^^^^^
+Replacing the os.spawn family
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
P_NOWAIT example::
@@ -386,8 +386,8 @@
Popen(["/bin/mycmd", "myarg"], env={"PATH": "/usr/bin"})
-Replacing os.popen\*
-^^^^^^^^^^^^^^^^^^^^
+Replacing os.popen, os.popen2, os.popen3
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
::
@@ -430,8 +430,8 @@
(child_stdin, child_stdout_and_stderr) = (p.stdin, p.stdout)
-Replacing popen2.\*
-^^^^^^^^^^^^^^^^^^^
+Replacing functions from the popen2 module
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. note::