diff -r 3bbe18aaea8c Doc/library/importlib.rst --- a/Doc/library/importlib.rst Tue Apr 14 10:35:43 2015 -0400 +++ b/Doc/library/importlib.rst Tue Apr 14 16:19:59 2015 -0400 @@ -160,10 +160,11 @@ There are a number of other caveats: If a module is syntactically correct but its initialization fails, the first - :keyword:`import` statement for it does not bind its name locally, but does - store a (partially initialized) module object in ``sys.modules``. To reload - the module you must first :keyword:`import` it again (this will bind the name - to the partially initialized module object) before you can :func:`reload` it. + :keyword:`import` statement for the module does not bind its name locally, + but stores a (partially initialized) module object in ``sys.modules``. To + reload the module you must first :keyword:`import` it again (this will bind + the name to the partially initialized module object) before you can + :func:`reload` it. When a module is reloaded, its dictionary (containing the module's global variables) is retained. Redefinitions of names will override the old @@ -179,11 +180,11 @@ except NameError: cache = {} - It is legal though generally not very useful to reload built-in or - dynamically loaded modules (this is not true for e.g. :mod:`sys`, - :mod:`__main__`, :mod:`builtins` and other key modules where reloading is - frowned upon). In many cases, however, extension modules are not designed to - be initialized more than once, and may fail in arbitrary ways when reloaded. + It is generally not very useful to reload built-in or dynamically loaded + modules. Reloading :mod:`sys`, :mod:`__main__`, :mod:`builtins` and other + key modules is not recommended. In many cases extension modules are not + designed to be initialized more than once, and may fail in arbitrary ways + when reloaded. If a module imports objects from another module using :keyword:`from` ... :keyword:`import` ..., calling :func:`reload` for the other module does not