You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Poetry项目切换至Python 3.11遇版本不兼容问题求助

解决Poetry项目修改Python版本后环境不匹配的问题

问题背景

我们有一个使用Poetry管理的名为daisy的项目,其pyproject.toml初始配置依赖Python ^3.9。当将配置中的Python版本修改为^3.11并执行poetry update命令时,出现错误提示:

Current Python version (3.9.7) is not allowed by the project (^3.11). Please change python executable via the "env use" command.

执行poetry env list查看环境,发现仅有一个已激活的daisy-Z0c0FuMJ-py3.9环境。该问题仅在Linux机器上出现,MacBook上无此异常。

解决方案

  1. 检查系统是否安装Python 3.11
    先确认Linux系统中已安装Python 3.11,执行命令:

    python3.11 --version
    

    如果提示命令不存在,根据发行版安装:

    • Debian/Ubuntu系:sudo apt install python3.11 python3.11-dev
    • RHEL/CentOS系:sudo dnf install python3.11
  2. 让Poetry切换到Python 3.11环境
    执行以下命令,为项目创建并激活基于Python 3.11的虚拟环境:

    poetry env use python3.11
    
  3. 验证环境切换结果
    执行poetry env list,会看到新生成的类似daisy-xxx-py3.11的环境,且带有*标记表示已激活;再执行:

    poetry run python --version
    

    确认输出为Python 3.11.x版本。

  4. 重新执行依赖更新
    现在运行poetry update,即可正常更新依赖,不会再出现版本不匹配的错误。

差异原因说明

MacOS中通过Homebrew等方式安装的Python版本,Poetry能自动检测并适配;而Linux系统默认Python版本通常固定为旧版本,额外安装的Python版本需要显式指定给Poetry,才会创建对应版本的虚拟环境。

内容的提问来源于stack exchange,提问作者Freek

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 01:05:33