Python 模块加载的搜索路径

在 Python 中,当我们加载一个模块时,Python会在指定的路径下搜索对应的.py文件,如果找不到则报错:

>>> import mymodule
Traceback (most recent call last):
  File "", line 1, in 
ImportError: No module named mymodule

Python解释器默认搜索当前目录、所有已安装的内置模块和第三方模块,搜索路径存放在 sys 模块的 path 变量中:

>>> import sys
>>> sys.path
['', '/Library/Frameworks/Python.framework/Versions/3.6/lib/python36.zip', '/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6', ..., '/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages']

有两种方法可以添加自定义搜索目录:

1.直接修改 sys.path 的值,添加要搜索的目录:

>>> import sys
>>> sys.path.append('/Users/wu/my_py_scripts')

这种方法是在运行时修改,运行结束后会失效。

2.设置环境变量 PYTHONPATH,该环境变量的内容会自动添加到模块搜索路径中。设置方式与设置 Path 环境变量类似。

你可能感兴趣的:(python)