summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeorg Brandl <georg@python.org>2008-03-21 19:37:57 (GMT)
committerGeorg Brandl <georg@python.org>2008-03-21 19:37:57 (GMT)
commitd346475a0cef4be9fb42e586e15e03c1f74c7903 (patch)
tree569a8761fc8d12f974b566a3e2139cb602f57897
parent3fbe20c01ea63aac0b06afdcb22422e8cb9a358e (diff)
downloadcpython-d346475a0cef4be9fb42e586e15e03c1f74c7903.zip
cpython-d346475a0cef4be9fb42e586e15e03c1f74c7903.tar.gz
cpython-d346475a0cef4be9fb42e586e15e03c1f74c7903.tar.bz2
Add docs for print_function and future_builtins. Fixes #2442.
-rw-r--r--Doc/library/functions.rst27
-rw-r--r--Doc/library/future_builtins.rst53
-rw-r--r--Doc/library/python.rst1
3 files changed, 81 insertions, 0 deletions
diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst
index 5b54622..978b32a 100644
--- a/Doc/library/functions.rst
+++ b/Doc/library/functions.rst
@@ -817,6 +817,33 @@ available. They are listed here in alphabetical order.
accidents.)
+.. function:: print([object, ...][, sep=' '][, end='\n'][, file=sys.stdout])
+
+ Print *object*\(s) to the stream *file*, separated by *sep* and followed by
+ *end*. *sep*, *end* and *file*, if present, must be given as keyword
+ arguments.
+
+ All non-keyword arguments are converted to strings like :func:`str` does and
+ written to the stream, separated by *sep* and followed by *end*. Both *sep*
+ and *end* must be strings; they can also be ``None``, which means to use the
+ default values. If no *object* is given, :func:`print` will just write
+ *end*.
+
+ The *file* argument must be an object with a ``write(string)`` method; if it
+ is not present or ``None``, :data:`sys.stdout` will be used.
+
+ .. note::
+
+ This function is not normally available as a builtin since the name
+ ``print`` is recognized as the :keyword:`print` statement. To disable the
+ statement and use the :func:`print` function, use this future statement at
+ the top of your module::
+
+ from __future__ import print_function
+
+ .. versionadded:: 2.6
+
+
.. function:: property([fget[, fset[, fdel[, doc]]]])
Return a property attribute for :term:`new-style class`\es (classes that
diff --git a/Doc/library/future_builtins.rst b/Doc/library/future_builtins.rst
new file mode 100644
index 0000000..e845fe4
--- /dev/null
+++ b/Doc/library/future_builtins.rst
@@ -0,0 +1,53 @@
+:mod:`future_builtins` --- Python 3 builtins
+============================================
+
+.. module:: future_builtins
+.. sectionauthor:: Georg Brandl
+.. versionadded:: 2.6
+
+This module provides functions that exist in 2.x, but have different behavior in
+Python 3, so they cannot be put into the 2.x builtin namespace.
+
+Instead, if you want to write code compatible with Python 3 builtins, import
+them from this module, like this::
+
+ from future_builtins import map, filter
+
+ ... code using Python 3-style map and filter ...
+
+The :program:`2to3` tool that ports Python 2 code to Python 3 will recognize
+this usage and leave the new builtins alone.
+
+.. note::
+
+ The Python 3 :func:`print` function is already in the builtins, but cannot be
+ accessed from Python 2 code unless you use the appropriate future statement::
+
+ from __future__ import print_function
+
+
+Available builtins are:
+
+.. function:: filter(function, iterable)
+
+ Works like :func:`itertools.ifilter`.
+
+.. function:: hex(object)
+
+ Works like the builtin :func:`hex`, but instead of :meth:`__hex__` it will
+ use the :meth:`__index__` method on its argument to get an integer that is
+ then converted to hexadecimal.
+
+.. function:: map(function, iterable, ...)
+
+ Works like :func:`itertools.imap`.
+
+.. function:: oct(object)
+
+ Works like the builtin :func:`oct`, but instead of :meth:`__oct__` it will
+ use the :meth:`__index__` method on its argument to get an integer that is
+ then converted to hexadecimal.
+
+.. function:: zip(*iterables)
+
+ Works like :func:`itertools.izip`.
diff --git a/Doc/library/python.rst b/Doc/library/python.rst
index 3b58eee..d9a37bb 100644
--- a/Doc/library/python.rst
+++ b/Doc/library/python.rst
@@ -14,6 +14,7 @@ overview:
sys.rst
__builtin__.rst
+ future_builtins.rst
__main__.rst
warnings.rst
contextlib.rst