Python 包导入

首先我们先了解下python中寻找模块的顺序

  是否是内建模块 -》主目录 -》PYTHONPATH环境变量 -》标准库 -》

  • 首先判断这个model是否是built-in,即内建模块,如果是则直接引用,如果不是则去sys.path的list中寻找
  • sys.path在python脚本执行时动态生成,包括一下三部分  

   a.脚本的执行位置,即当前的路径下(sys.path中的形态:"")

   b.环境变量中的其他路径

         c.安装python时的依赖路径

  当import 一个模块时,会依次的在以上路径顺序中查找,找到了就不再往后找了,找不到就导入异常,只搜索指定目录,不递归搜索。

这里还有个问题没弄明白,就是不同目录,不同级别的导入,写项目的时候导入一个模块,到整体运行的时候模块怎么导入。

原文地址:https://www.cnblogs.com/nopnog/p/8143124.html