From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Thu, 25 Jul 2019 17:27:59 +0000 (-0700) Subject: Swap 'if' branches so content matches to condition in importlib example (GH-14947) X-Git-Tag: v3.8.0b3~13 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c594c274e92dc66afad02fe7a3c08a9b6c5a396d;p=python Swap 'if' branches so content matches to condition in importlib example (GH-14947) Prior to this change the guard on an 'elif' used an assignment expression whose value was used in a later 'else' block, causing some confusion for people. (Discussion on Twitter: https://twitter.com/brettsky/status/1153861041068994566.) Automerge-Triggered-By: @brettcannon (cherry picked from commit 544fa15ea1b7b73068319bdb217b684e2fd7bacc) Co-authored-by: Tzu-ping Chung --- diff --git a/Doc/library/importlib.rst b/Doc/library/importlib.rst index 9fab0779aa..65a685022e 100644 --- a/Doc/library/importlib.rst +++ b/Doc/library/importlib.rst @@ -1640,14 +1640,14 @@ import, then you should use :func:`importlib.util.find_spec`. if name in sys.modules: print(f"{name!r} already in sys.modules") - elif (spec := importlib.util.find_spec(name)) is None: - print(f"can't find the {name!r} module") - else: + elif (spec := importlib.util.find_spec(name)) is not None: # If you chose to perform the actual import ... module = importlib.util.module_from_spec(spec) sys.modules[name] = module spec.loader.exec_module(module) print(f"{name!r} has been imported") + else: + print(f"can't find the {name!r} module") Importing a source file directly