为了账号安全,请及时绑定邮箱和手机立即绑定

使用和不使用 Python 运行 venv 命令有什么区别?

使用和不使用 Python 运行 venv 命令有什么区别?

慕慕森 2021-09-11 10:30:22
我正在齐心协力地了解 Python 打包的工作原理,并且我不断看到以下习语被反复使用。例如,如果您使用 venv 创建虚拟环境,您可以这样做...python3 -m venv tutorial_env或者你可以这样做pyvenv tutorial_env在幕后,使用 python3 创建虚拟环境和使用 pyvenv 创建它之间的真正区别是什么?为什么要使用一个命令而不是另一个?
查看完整描述

2 回答

?
GCT1015

TA贡献1827条经验 获得超4个赞

根据python docs两者是等效的。这是来自python 3.4 源代码的pvenv 脚本:


#!/usr/bin/env python3

if __name__ == '__main__':

    import sys

    rc = 1

    try:

        import venv

        venv.main()

        rc = 0

    except Exception as e:

        print('Error: %s' % e, file=sys.stderr)

    sys.exit(rc)

笔记:


该pyvenv脚本随 Python 3 一起提供,但在 Python 3.6+ 中已被弃用,取而代之的是python3 -m venv. 这可以防止混淆 pyvenv 连接到什么 Python 解释器以及虚拟环境将使用什么 Python 解释器。


查看完整回答
反对 回复 2021-09-11
?
千万里不及你

TA贡献1784条经验 获得超9个赞

Mayank Porwal 的回答让我想到了这个问题,它说 pyvenv 是 venv 的包装器,在 Python 3.6 中已弃用。

什么新的Python 3.6讲述为什么pyvenv已被否决。


查看完整回答
反对 回复 2021-09-11
  • 2 回答
  • 0 关注
  • 219 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信