Menu Close

Python 模块搜索路径和模块重新加载

1.Python 模块搜索路径简介

当你导入一个模块时,采用的语法:

导入模块时,Python 会在多个位置进行检查。 解释器首先寻找一个内置模块。 然后(如果未找到内置模块),Python 查找sys.path中定义的目录列表。 搜索按此顺序进行。

  • 当前目录。
  • PYTHONPATH(具有目录列表的环境变量)。
  • 与安装有关的默认目录。

例1.1 打印出系统路径

我们可以添加和修改此列表以添加我们自己的路径。

为确保 Python 总能找到 module.py,您需要:

  • 将 module.py 放在程序将执行的文件夹中。
  • 在 PYTHONPATH 环境变量中包含包含 module.py 的文件夹。或者,您可以将 module.py 放在 PYTHONPATH 变量中包含的文件夹之一中。
  • 将 module.py 放在与安装相关的文件夹之一中。

2.重新加载模块 (imp即将淘汰)

Python 解释器在会话期间仅导入一次模块。 这使事情更有效率。

例2.1 模块重新加载

假设我们在名为my_module的模块中具有以下代码。

my_module.py

现在我们看到了多次导入的效果。

main.py

我们可以看到我们的代码只执行了一次。 这说明我们的模块仅导入了一次。

现在,如果我们的模块在程序执行过程中发生了变化,我们将不得不重新加载它。一种方法是重启解释器。 但这并没有太大帮助。

Python 提供了一种更有效的方法。 我们可以使用imp模块内部的reload()函数来重新加载模块。 我们可以通过以下方式做到这一点:

main.py

结果

 

wer

除教程外,本网站大部分文章来自互联网,如果有内容冒犯到你,请联系我们删除!
Posted in Python教程