对不起,如果我听起来有点愚蠢.我很困惑这两个
virtualenv myvenv
和
-m venv myvenv之间的区别
第一个在创建虚拟环境时适合我,而另一个不适用.
我将CD放入我的开发目录并使用" virtualenv myvenv "并创建虚拟环境.但如果我使用" -m venv myvenv ",它只会出错.请帮我理解
np8*_*np8 21
我认为virtualenv 文档对此解释得最好:
venv是virtualenv自 Python 3.3 以来集成到标准库中的子集。子集意味着只有部分virtualenv功能在venv:
venv因为它没有“app-data种子方法”,所以可能会更慢venv仅通过升级 Python 版本进行升级,而virtualenv使用 pip 进行更新。venv 不可扩展virtualenv拥有更丰富的编程 API (描述虚拟环境而不创建它们)。请参阅venv此处的API。venv不能自动发现任意安装的python版本,而virtualenv可以。这意味着,如果要使用 PATH 中第一个版本以外的其他 Python 版本,则venv必须指定python可执行文件的完整路径。使用virtualenv,您可以只提供版本号。请参阅virtualenv 文档中的python 发现。对我来说,差异非常微妙,唯一的实际差异venv是包含在标准库中(自 3.3 起)。我已经使用python -m venv venv了很长时间,从来不需要替代品。
Cos*_*tin 16
venv是一个直接附带python 3的包.所以你不需要pip install任何东西.
virtualenv是一个独立的库,可在https://virtualenv.pypa.io/en/stable/获得,可以安装pip.
他们解决同样的问题并以非常类似的方式工作.
如果你使用python3我建议避免"额外"的依赖,并坚持下去 venv
您的错误可能是因为您使用的是Python2/pip2
| 归档时间: |
|
| 查看次数: |
3950 次 |
| 最近记录: |