Python3.7.中使用virtenv替代venv和virtualenv

venv的升级版virtenv

Python3.3以上的版本通过venv模块原生支持虚拟环境,可以代替Python之前的virtualenv

我在Python3.7.2上没有安装venv,但是找到了virtenv:virtenv通过一个简单的脚本封装了venv和virtualenv的创建。如果可能,始终使用venv;否则用virtualenv(除非指定)向下兼容。
此文件可以用作独立脚本,也可以用作要导入的模块。https://pypi.org/project/virtenv/

Python API

create(python, env_dir, virtualenv_py, system, prompt)
  • 【python】: Python可执行文件的绝对路径。非空、且不匹配sys.executable, that interpreter is launched as a subprocess to run this script. Otherwise, the creation is done in-process (subprocesses may still be run in steps during the creation).
  • env_dir points to the directory to create the new virtual environment
  • system specifies whether system site packages will be available for the created virtual environment.
  • prompt specifies the prompt prefix used in the created virtual environment’s activate scripts.
  • virtualenv_py should be an absolute path pointing to a virtualenv.py script. This is optional; if missing, virtualenv will not be used to create a virtual environment.

Command line API

virtenv env_dir --python PYTHON [--system] [--prompt PROMPT]

参数类似Python API

The python argument is required, and can be a version, such as 3.7. A suitable Python executable will be looked up automatically if possible.

venv什么情况下使用

如上所述,venv在可用的情况下优先使用。virtualenv在以下情形使用:

  • 目标Python的venv模块不可用时
  • 目标Python的ensurepip模块不可用时。一般发生在Python 3.3或者一些不太绑定ensurepip的版本,如Debian。没有ensurepip模块,pip也就不可用了
  • sys.real_prefix 设置了。这一般表示目标Python被virtualenv管理,且venv无法使用。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值