python - 使用 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 list
。md-to-html (0.3.0)
在列表中。
安装 pip 包然后在安装了多个 Python 版本的系统上使用这些包的正确方法是什么?
解决方案
您可以为其中一个 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
文件夹并重新启动该过程。
推荐阅读
- sql-server - 如果数据库没有所有者,T-SQL 将所有者更改为当前用户
- ruby - shopify 登录命令失败并显示 Errno::ENOENT | Shopify 应用 CLI | Linux终端
- r - 当输入更改(例如选项卡更改)时,我如何告诉我的 modalDialog 自动关闭?
- python - 在 [任何以前的版本] 之前,这在 Python 中是否可行
- null - 在将我的表单数据表单 Angular 发布到 Spring Boot api 时,少数字段被保存在 DB 中,但其他字段为空
- json - VSCode 和 typescript 为特定文件扩展名设置默认导出类型
- c# - 如何在 swagger.json 中包含其他模型?
- pdf - itext lowagie 版本:'2.1.7' 将支持pdf的中文翻译
- verilog - 当我们在显示输出时以结构样式的 Array Multiplier 代码的输出中得到“X”时该怎么办?
- javascript - 结束进程时 process.exit() 与 return 有什么区别?