是否可以从纱线激活 venv?

Is it possible to activate venv from yarn?

我已经用 Python 和 yarn 设置了一个项目。我想将创建、激活和安装需求的整个过程编写成脚本。

目前创建工作正常,但不会在前台激活,因此命令提示符不会切换到 venv。有什么解决办法吗?

  "scripts": {
    "create_venv": "virtualenv venv",
    "source_venv": "source venv/bin/activate",
    "pip_install": "pip install -r requirements.txt",
    "start": "python wsgi.py"
  }

你可以的。

  "scripts": {
    "create_venv": "/usr/local/bin/virtualenv venv",
    "pip_install": "pip install -r requirements.txt",
    "start": "python wsgi.py"
  }

唯一不能做的就是来源

"source_venv": "source venv/bin/activate",

这是行不通的,因为 source 是一个 bash 命令,它被应用到它来自 运行 的终端。所以yarn会初始化一个新的shell激活环境并关闭shell。所以这意味着你的开始可能行不通。这就是你可能需要做这样的事情的地方

    "start": "source venv/bin/activate && python wsgi.py"
    "pip_install": "source venv/bin/activate && pip install -r requirements.txt",