这个烧瓶错误是什么意思? /usr/local/bin/flask: 错误的解释器: /usr/local/opt/python/bin/python2.7: 没有那个文件或目录
What does this flask error mean? /usr/local/bin/flask: bad interpreter: /usr/local/opt/python/bin/python2.7: no such file or directory
我可以看出 Flask 正在尝试使用 python2.7 作为解释器,但我不明白为什么。我用 python3 -m venv venv
创建了一个 virtualenv,安装了 flask,并尝试 运行 一个应用程序。我按预期在我的 venv 中看到 python3.6,所以我只是不明白使用 python2.7 的尝试来自何处。我认为这与我的路径有关,但我发现每当我需要在 2 和 3 之间切换时,我需要更改我的路径,不可避免地破坏另一个版本。
来自其他语言,"isolated" venvs 的承诺似乎从来没有像预期的那样工作,因为我经常发现 python 2 和 3 不可分割地混淆。有没有办法获得绝对的python 2或3环境?
您过去曾经安装过带有 Python 2.7 的 Flask,但该脚本指向一个不再安装的 Python 版本。
鉴于涉及的路径是 /usr/local/bin
和 /usr/local/opt/python/bin/python2.7
,我猜你在这里使用 OS X 并安装了 Homebrew。 Homebrew 在最近将 python
公式从 Python 2 切换为 Python 3,您可能在此之前使用 Python 2 pip
命令安装了 Flask改变。您应该能够完全删除 /usr/local/bin/flask
脚本,它现在已过时且损坏。
你也没有激活你的virtualenv。您没有,但在您这样做之前,bin/
目录和 flask
脚本的正确版本也将不可用。激活 virtualenv 后,您的 PATH
环境变量将更新为首先包含 bin/
目录,方法是将其包含在 PATH
值的前面。
通过使用 virtualenv bin/
目录的路径来限定要使用的 flask
脚本,或者正确激活 virtualenv。
您可以通过
检查您的 virtualenv 是否处于活动状态
echo $VIRTUAL_ENV
这应该会打印出你的 virtualenv 的路径。您还可以验证 PATH
是否设置正确; echo $PATH
应该将 virtualenv .../bin/
目录显示为第一个条目。如果未激活,请通过 运行ning
激活它
source bin/activate
在virtualenv根目录下。
您可以 运行 使用
正确的 flask
命令
path/to/venv/bin/flask
我可以看出 Flask 正在尝试使用 python2.7 作为解释器,但我不明白为什么。我用 python3 -m venv venv
创建了一个 virtualenv,安装了 flask,并尝试 运行 一个应用程序。我按预期在我的 venv 中看到 python3.6,所以我只是不明白使用 python2.7 的尝试来自何处。我认为这与我的路径有关,但我发现每当我需要在 2 和 3 之间切换时,我需要更改我的路径,不可避免地破坏另一个版本。
来自其他语言,"isolated" venvs 的承诺似乎从来没有像预期的那样工作,因为我经常发现 python 2 和 3 不可分割地混淆。有没有办法获得绝对的python 2或3环境?
您过去曾经安装过带有 Python 2.7 的 Flask,但该脚本指向一个不再安装的 Python 版本。
鉴于涉及的路径是 /usr/local/bin
和 /usr/local/opt/python/bin/python2.7
,我猜你在这里使用 OS X 并安装了 Homebrew。 Homebrew 在最近将 python
公式从 Python 2 切换为 Python 3,您可能在此之前使用 Python 2 pip
命令安装了 Flask改变。您应该能够完全删除 /usr/local/bin/flask
脚本,它现在已过时且损坏。
你也没有激活你的virtualenv。您没有,但在您这样做之前,bin/
目录和 flask
脚本的正确版本也将不可用。激活 virtualenv 后,您的 PATH
环境变量将更新为首先包含 bin/
目录,方法是将其包含在 PATH
值的前面。
通过使用 virtualenv bin/
目录的路径来限定要使用的 flask
脚本,或者正确激活 virtualenv。
您可以通过
检查您的 virtualenv 是否处于活动状态echo $VIRTUAL_ENV
这应该会打印出你的 virtualenv 的路径。您还可以验证 PATH
是否设置正确; echo $PATH
应该将 virtualenv .../bin/
目录显示为第一个条目。如果未激活,请通过 运行ning
source bin/activate
在virtualenv根目录下。
您可以 运行 使用
正确的flask
命令
path/to/venv/bin/flask