Python之import导入机制

1. 模块导入时的搜索路径:

当你导入一个模块,Python 解析器对模块位置的搜索顺序是:

1.当前目录;
2.如果不在当前目录,Python 则搜索在 shell 变量 PYTHONPATH 下的每个目录;
3.如果都找不到,Python会察看默认路径。Linux下,默认路径一般为/usr/local/lib/python/。

模块搜索路径存储在 system 模块的 sys.path 变量中。变量里包含当前目录,PYTHONPATH和由安装过程决定的默认目录。

2.动态增加import路径:

在实际开发中,默认包含了当前目录为搜索路径,所以,当前目录下的模块和子模块均可以正常访问。但是若一个模块需要import平级的不同目录的模块,或者上级目录里面的模块,就可以通过修改path来实现。修改path的方式一般可采用如下两种方式:

(1)通过对sys.path进行动态路径的添加:

sys.path里面包含了import导入时进行搜索的路径:

一般可以对当前项目如下操作:

获取当前文件路径:

Path(__file__).resolve(strict=True)

获取当前文件的父目录:

Path(__file__).resolve(strict=True).parent

获取当前文件的父目录的父目录:

Path(__file__).resolve(strict=True).parent.parent

sys.path添加路径:

sys.path.append('DIR的字符串')

(2)添加系统环境变量PYTHONPATH,在这个环境变量中输入相关的路径,不同的路径之间用逗号分开,路径将会自动加入到sys.path中。

你可能感兴趣的:(Python高级编程,python)