Python解释器会根据(用sys.path调用的)列表中的路径来寻找模块,基本上来自以下几个来源:1、执行Python解释器时的文件夹;2、PYTHONPATH环境变量;3、Python安装的标准链接库等文件夹;4、PTH文件列出的文件夹。其中,PTH文件的部分,就是指可以在一个.pth文件中列出模块的搜索路径,一行一个路径。PTH文件的存放位置不同操作系统并不相同,可以通过site模块的getsitepackages()函数来获取正确的位置(import site 、site.getsitepackages())。如果想将PTH文件的存放到其它文件夹中,可以使用如site.addsitedir(D:\workspace)来新增PTH文件的文件夹来源,也会是sys.path路径的一部分。
Python解释器会在PYTHONPATH环境变量设置的文件夹中寻找是否有指定模块名称对应的.py文件。如果想要动态的影响模块的搜索路径,也可以通过sys.path.append(x)增加路径;sys.path.remove(x)删除某个路径等方式达此目的。
在Windows中,可以使用SET PYTHONPATH=路径1;路径2的方式来设置PYTHONPATH环境变量,用‘;’来分隔。