要想知道python的搜索路径有哪些,我们可以用以下代码来查看:
import sys,pprint
pprint.pprint(sys.path)
pprint输出的是python的搜索路径,python的解释器就是从这些路径中搜索我们所需的模块的。如果我们想让解释器能够搜索到我们自定义的模块的话,有以下两种方法:
一:配置PYTHONPATH环境变量
假设我们在ubuntu下有一个python文件夹,它的路径是~/python,我们将我们自定义的模块存放在该目录下面。若想导入里面的模块,我们就修改home下的.profile文件
gedit ~/.profile
在文件的最后一行输入添加以下代码
export PYTHONPATH=$PYTHONPATH:~/python
这样就将我们的python文件夹的路径加入到了PYTHONPATH。
在修改完.profile之后,我们用以下命令将文件重新加载一遍,就可以更新PYTHONPATH了。因为是修改的是/home目录下的.profile文件,所以这个更改只能对当前用户生效,换成其他用户就不行了。如果要所有用户都有效,可以修改/etc/bash.bashrc,操作同方法跟此方法相同,只是修改的文件变成/etc/bash.bashrc这个文件。
二:import导入
假设还是之前的python文件夹,我们在写Python程序时可以动态的导入该文件夹路径,导入其中的模块。
import sys
sys.path.append('~/.python')
这样我们就成功的将其导入到path了,不过这种方法是临时的