gpt4 book ai didi

python - Macos Catalina 破坏了所有 Python Venvs

转载 作者:行者123 更新时间:2023-12-03 14:54:57 25 4
gpt4 key购买 nike

最近刚刚升级到 Mac OSX Catalina,它似乎已经破坏了我所有的 Python venv。

  • 我有一个在升级到 Catalina 之前创建的 venv。
  • 我可以毫无问题地激活 venv:source venv/bin/activate
  • 当我输入 pythonpython3 ,它实际上运行系统 Python 解释器,而是 我的 venv 中预期的 Python 解释器。

  • 激活我的venv...
    >>> which python
    /usr/bin/python
    >>> which python3
    /usr/local/bin/python3

    我希望它指向 /Users/<username>/<path-to-venv>/venv/bin/python3 .
  • 如果我尝试直接运行那个 Python 解释器:
  • >>> /Users/<username>/<path-to-venv>/venv/bin/python3

    bash: /Users/<username>/<path-to-venv>/venv/bin/python3: No such file or directory
  • 如果我在 Finder 中导航到这个 venv 目录,我可以看到 python3文件存在,尽管它实际上是一个别名。如果我双击它,我会弹出一条错误消息,内容为:The operation can't be completed because the original item for "Python3" can't be found.

  • 所以我认为这些 venv 的工作方式是它们基于对现有 Python 解释器安装的引用。显然,运行 venv 会调用这些引用,如果原始安装被破坏,它将失败。我知道 Catalina 使用了默认的 Python 设置,甚至更改了安装目录。

    有人遇到过这种情况么?任何人都可以提供解决此问题的提示吗?这似乎影响了我系统中的所有 venv 虚拟环境。

    最佳答案

    您可以尝试在同一文件夹中创建新的 venv 或更新现有的 venv。通过以下所有内容,我假设您已经使用捆绑的 venv 创建了虚拟环境。模块

  • 对于创建它是您可能已经使用过的命令

  • python3 -m venv <path_to_dir>
  • 为了更新,--upgrade参数是你要找的。

  • 您需要使用目标 Python 版本运行它,例如在本例中:

    python3 -m venv --upgrade <path_to_dir>

    更多详情请看我的回答 here

    关于python - Macos Catalina 破坏了所有 Python Venvs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59438630/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com