You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Windows PowerShell中执行pip install pandas==1.1.4时出现AttributeError报错求助

Windows PowerShell中执行pip install pandas==1.1.4时出现AttributeError报错求助

看起来你在安装特定版本的pandas时碰到了棘手的问题,我来帮你拆解一下原因和可行的解决办法~

问题根源分析

你遇到的AttributeError: module 'configparser' has no attribute 'SafeConfigParser'错误,本质是版本兼容性问题

  • pandas 1.1.4是2020年发布的旧版本,它的安装脚本里还在使用Python中已被移除的configparser.SafeConfigParser接口;
  • 而你当前使用的Python版本是3.12(从报错里的seaborn-0.11.0-py3.12.egg能看出来),Python 3.12彻底移除了SafeConfigParser这个旧名称,统一使用configparser.ConfigParser,这就导致老版本的pandas安装代码调用了不存在的属性,直接报错。

至于提示里的“the error originates from a subprocess, and is likely not a problem with pip”,意思是:pip只是负责调用pandas的安装脚本(这个脚本作为子进程运行),错误是在pandas自己的安装代码里产生的,不是pip工具本身有问题,所以锅不在pip上~

可行的解决办法

  • 最稳妥的方案:匹配Python与pandas版本
    pandas 1.1.4官方支持的Python版本是3.6~3.9,如果你必须使用这个特定版本的pandas,建议你:

    1. 安装Python 3.9版本;
    2. 基于Python 3.9创建新的虚拟环境:python3.9 -m venv virenv_preprocessing
    3. 激活虚拟环境:.\virenv_preprocessing\Scripts\activate
    4. 再执行安装命令:pip install pandas==1.1.4
      如果项目对pandas版本没有硬性要求,也可以升级pandas到支持Python 3.12的版本(比如pandas 2.1.0及以上),直接执行pip install pandas即可安装适配你当前Python版本的最新兼容版。
  • 尝试使用预编译wheel包(可选)
    如果你不想更换Python版本,可以尝试寻找适配Python 3.12的pandas 1.1.4预编译wheel包,下载后通过本地文件安装,命令格式如下:

    pip install 本地wheel文件的完整路径
    

    不过这个方法没有官方保障,可能存在未知的兼容性问题,谨慎使用。

  • 临时修改源码(不推荐)
    你可以在安装过程中临时修改报错的versioneer.py文件,把configparser.SafeConfigParser()替换成configparser.ConfigParser(),但这个操作需要在安装时拦截并修改临时文件,步骤繁琐,而且后续可能还会出现其他版本兼容问题,不推荐作为常规解决方案。

备注:内容来源于stack exchange,提问作者lokalhangatt

火山引擎 最新活动