首页 > 解决方案 > 使用 PIP 安装包,然后在安装了多个 Python 版本的系统上使用该包

问题描述

我正在尝试使用包md-to-html。安装说明:

pip install md-to-html

我在“Debian Rodete”上。我做了pip并且得到了command not found.我不确定最好的安装方式pip,因为如果我这样做了python [TAB],我会看到:

python             python3            python3.6          python3.6m-config  python3m-config
python2            python3.5          python3.6-config   python3-config     
python2.7          python3.5m         python3.6m         python3m 

所以,我做到了sudo apt-get install python3-pip

然后,pip3 --version返回pip 9.0.1 from /usr/lib/python3/dist-packages (python 3.6)确认它已安装。

然后,我尝试了pip3 install md-to-html. 我得到了Successfully installed md-to-html-0.3.0

然后,我尝试了python3 -m md-to-html. 我得到了/usr/bin/python3: No module named md-to-html

因为 pip 版本表明了一些关于 python 3.6 的内容,所以我尝试了python3.6 -m md-to-html. 我得到了/usr/bin/python3.6: No module named md-to-html

我在网上看到现在使用 pip 的最佳方式是python3 -m pip. 所以,我试过了python3 -m pip install md-to-html。我得到了Successfully installed md-to-html-0.3.0

然后,我尝试python3 -m md-to-html了,我得到了/usr/bin/python3: No module named md-to-html

所以,我试过了python3 -m pip listmd-to-html (0.3.0)在列表中。

安装 pip 包然后在安装了多个 Python 版本的系统上使用这些包的正确方法是什么?

标签: pythonpython-3.xpip

解决方案


您可以为其中一个 python 版本创建一个虚拟环境,然后使用它的 pip 来安装包。这样,您可以在处理项目时明确选择该环境(并且不需要记住哪个 python 版本安装了什么)。

安装:

pip install virtualenv

选择python版本

virtualenv -p /usr/bin/python2.7 venv

或者

virtualenv -p /usr/bin/python3.5 venv

使用虚拟环境就像venv在工作区中拥有一个文件夹一样简单,当您想要处理该项目时“打开”它:

$ source venv/bin/activate
(venv) $

使用 pip 安装的软件包存储在该venv文件夹中。

要停用:

(venv) $ deactivate
$

如果您搞砸了,您可以随时删除该venv文件夹并重新启动该过程。


推荐阅读