From 5a07608d0855e4104e4070328155b52010dec4e7 Mon Sep 17 00:00:00 2001 From: "Miss Islington (bot)" <31488909+miss-islington@users.noreply.github.com> Date: Sun, 25 Feb 2018 11:33:14 -0800 Subject: [PATCH] bpo-31454: Include information about "import X as Y" in Modules tutorial (GH-4041) (cherry picked from commit fbee88244e8921afdb29fde51a9a010a8ae18277) Co-authored-by: Mario Corchero --- Doc/tutorial/modules.rst | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/Doc/tutorial/modules.rst b/Doc/tutorial/modules.rst index 1e3d5c01a47..8c263182dab 100644 --- a/Doc/tutorial/modules.rst +++ b/Doc/tutorial/modules.rst @@ -112,6 +112,25 @@ Note that in general the practice of importing ``*`` from a module or package is frowned upon, since it often causes poorly readable code. However, it is okay to use it to save typing in interactive sessions. +If the module name is followed by :keyword:`as`, then the name +following :keyword:`as` is bound directly to the imported module. + +:: + + >>> import fibo as fib + >>> fib.fib(500) + 0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 + +This is effectively importing the module in the same way that ``import fibo`` +will do, with the only difference of it being available as ``fib``. + +It can also be used when utilising :keyword:`from` with similar effects:: + + >>> from fibo import fib as fibonacci + >>> fibonacci(500) + 0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 + + .. note:: For efficiency reasons, each module is only imported once per interpreter