Python中的导入语句

Python中的导入语句,python,import,package,python-import,Python,Import,Package,Python Import,我正在阅读Mark Lutz的《学习编程Python》。他写道: 模块在第一次导入或从导入时加载并运行,并且仅在第一次导入时加载并运行。这是开着的 因为导入是一个昂贵的操作,所以默认情况下Python只需要 每个文件、每个进程一次。以后的导入操作只是获取已加载的 模块对象 因此,如果我有两个包a和b,我写下以下语句: import a import b 这实际上是做什么的?这不加载包b吗?进口的是两次吗?我相信你误读了这句话 模块在第一次导入或从导入时加载并运行,并且仅在第一次导入时加载并运行

我正在阅读Mark Lutz的《学习编程Python》。他写道:

模块在第一次导入或从导入时加载并运行,并且仅在第一次导入时加载并运行。这是开着的 因为导入是一个昂贵的操作,所以默认情况下Python只需要 每个文件、每个进程一次。以后的导入操作只是获取已加载的 模块对象

因此,如果我有两个包a和b,我写下以下语句:

import a
import b

这实际上是做什么的?这不加载包b吗?进口的是两次吗?

我相信你误读了这句话

模块在第一次导入或从导入时加载并运行,并且仅在第一次导入时加载并运行。这是故意的


此语句不是说它将只运行第一次导入。这意味着对于给定的模块,它只会在引用它的第一个
import
导入。或者换句话说,Python不会两次导入同一个模块。它与导入不同的模块无关

我不确定除了导入模块
a
b
之外的任何行为都是多么的理智。他只是说Python不会两次导入同一个模块。我想不出来。我以为你导入了一个模块就完成了。不能再导入了。在这种情况下,这将是一个非常大的错误。