Closes #9254: backport __import__ docstring/doc mentions of importlib.

Patch by Éric Araujo.
This commit is contained in:
R David Murray 2012-07-18 19:44:08 -04:00
parent 0e3755e58a
commit 59488d233b
2 changed files with 8 additions and 11 deletions

View File

@ -1558,7 +1558,7 @@ available. They are listed here in alphabetical order.
.. note:: .. note::
This is an advanced function that is not needed in everyday Python This is an advanced function that is not needed in everyday Python
programming. programming, unlike :func:`importlib.import_module`.
This function is invoked by the :keyword:`import` statement. It can be This function is invoked by the :keyword:`import` statement. It can be
replaced (by importing the :mod:`__builtin__` module and assigning to replaced (by importing the :mod:`__builtin__` module and assigning to
@ -1609,15 +1609,8 @@ available. They are listed here in alphabetical order.
names. names.
If you simply want to import a module (potentially within a package) by name, If you simply want to import a module (potentially within a package) by name,
you can call :func:`__import__` and then look it up in :data:`sys.modules`:: use :func:`importlib.import_module`.
>>> import sys
>>> name = 'foo.bar.baz'
>>> __import__(name)
<module 'foo' from ...>
>>> baz = sys.modules[name]
>>> baz
<module 'foo.bar.baz' from ...>
.. versionchanged:: 2.5 .. versionchanged:: 2.5
The level parameter was added. The level parameter was added.

View File

@ -53,8 +53,12 @@ builtin___import__(PyObject *self, PyObject *args, PyObject *kwds)
PyDoc_STRVAR(import_doc, PyDoc_STRVAR(import_doc,
"__import__(name, globals={}, locals={}, fromlist=[], level=-1) -> module\n\ "__import__(name, globals={}, locals={}, fromlist=[], level=-1) -> module\n\
\n\ \n\
Import a module. The globals are only used to determine the context;\n\ Import a module. Because this function is meant for use by the Python\n\
they are not modified. The locals are currently unused. The fromlist\n\ interpreter and not for general use it is better to use\n\
importlib.import_module() to programmatically import a module.\n\
\n\
The globals argument is only used to determine the context;\n\
they are not modified. The locals argument is unused. The fromlist\n\
should be a list of names to emulate ``from name import ...'', or an\n\ should be a list of names to emulate ``from name import ...'', or an\n\
empty list to emulate ``import name''.\n\ empty list to emulate ``import name''.\n\
When importing a module from a package, note that __import__('A.B', ...)\n\ When importing a module from a package, note that __import__('A.B', ...)\n\