linux下 彻底修改python的包/模块导入路径

python模式下,有时候需要导入  import某些模块或者包。明明这个模块/包是存在的,却提示导入错误,比如,“ImportError: No module named lxml”。

但是当你在命令行下,通过 “pip install lxml” 时,却提示该模块已经存在了,"Requirement already satisfied: lxml in /usr/local/lib/python3.5/dist-packages (4.3.2)"。

此时,是因为python 寻找模块或者包的路径,没有指向 lxml包所在的路径,所以需要添加上。有两种办法添加:

第一种,通过调用sys.path.append("it's path")添加,但这种方式是临时的,退出当前会话之后就失效了。

进入python模式下,

import sys

sys.path.append("/usr/local/lib/python3.5/dist-packages")

此时,再打印看一下结果,已经有lxml所在的路径了:

但这种方法的缺点是,只能在当前会话窗口中有效。退出该会话就失效。

第二种,长期有效的办法

在linux命令行下使用  expert 工具:

export PYTHONPATH=/usr/local/lib/python3.5/dist-packages

此时,可以打印 echo $PYTHONPATH 查看一下是否添加成功:

执行成功之后,进入python模式   import lxml   即可成功。

原文地址:https://www.cnblogs.com/buffer/p/10531411.html