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

Win10+Python3.10下使用pip安装模块出现ImportError如何解决?

问题场景

64位Windows 10系统、Python 3.10环境中,pip可正常识别,但执行命令pip install customtkinter安装customtkinter模块时,出现如下报错:

Traceback (most recent call last):
  File "c:\users\(Username)\appdata\local\programs\python\python310\lib\runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "c:\users\(Username)\appdata\local\programs\python\python310\lib\runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "C:\Users\(Username)\AppData\Local\Programs\Python\Python310\Scripts\pip.exe\__main__.py", line 4, in <module>
  File "c:\users\(Username)\appdata\local\programs\python\python310\lib\site-packages\pip\_internal\cli\main.py", line 9, in <module>
    from pip._internal.cli.autocompletion import autocomplete
  File "c:\users\(Username)\appdata\local\programs\python\python310\lib\site-packages\pip\_internal\cli\autocompletion.py", line 10, in <module>
    from pip._internal.cli.main_parser import create_main_parser
  File "c:\users\(Username)\appdata\local\programs\python\python310\lib\site-packages\pip\_internal\cli\main_parser.py", line 9, in <module>
    from pip._internal.build_env import get_runnable_pip
  File "c:\users\(Username)\appdata\local\programs\python\python310\lib\site-packages\pip\_internal\build_env.py", line 19, in <module>
    from pip._internal.cli.spinners import open_spinner
  File "c:\users\(Username)\appdata\local\programs\python\python310\lib\site-packages\pip\_internal\cli\spinners.py", line 9, in <module>
    from pip._internal.utils.logging import get_indentation
  File "c:\users\(Username)\appdata\local\programs\python\python310\lib\site-packages\pip\_internal\utils\logging.py", line 29, in <module>
    from pip._internal.utils.misc import ensure_dir
  File "c:\users\(Username)\appdata\local\programs\python\python310\lib\site-packages\pip\_internal\utils\misc.py", line 42, in <module>
    from pip._internal.exceptions import CommandError, ExternallyManagedEnvironment
  File "c:\users\(Username)\appdata\local\programs\python\python310\lib\site-packages\pip\_internal\exceptions.py", line 18, in <module>
    from pip._vendor.requests.models import Request, Response
  File "c:\users\(Username)\appdata\local\programs\python\python310\lib\site-packages\pip\_vendor\requests\__init__.py", line 149, in <module>
    from . import packages, utils
  File "c:\users\(Username)\appdata\local\programs\python\python310\lib\site-packages\pip\_vendor\requests\packages\__init__.py", line 3, in <module>
    from . import urllib3
  File "c:\users\(Username)\appdata\local\programs\python\python310\lib\site-packages\pip\_vendor\requests\packages\urllib3\__init__.py", line 10, in <module>
    from .connectionpool import (
  File "c:\users\(Username)\appdata\local\programs\python\python310\lib\site-packages\pip\_vendor\requests\packages\urllib3\connectionpool.py", line 38, in <module>
    from .response import HTTPResponse
  File "c:\users\(Username)\appdata\local\programs\python\python310\lib\site-packages\pip\_vendor\requests\packages\urllib3\response.py", line 5, in <module>
    from ._collections import HTTPHeaderDict
  File "c:\users\(Username)\appdata\local\programs\python\python310\lib\site-packages\pip\_vendor\requests\packages\urllib3\_collections.py", line 1, in <module>
    from collections import Mapping, MutableMapping
ImportError: 无法从 'collections' 导入名称 'Mapping' (c:\users\(Username)\appdata\local\programs\python\python310\lib\collections\__init__.py)

问题原因

Python 3.10 版本开始,collections模块中的Mapping和MutableMapping抽象基类被迁移到了collections.abc子模块中。当前环境的pip依赖的urllib3版本过于老旧,仍在尝试从collections直接导入这些已迁移的类,导致抛出导入错误。

解决方法

方法1:手动修改报错文件

找到路径 c:\users\(Username)\appdata\local\programs\python\python310\lib\site-packages\pip\_vendor\requests\packages\urllib3\_collections.py,将文件第一行的代码:

from collections import Mapping, MutableMapping

修改为:

from collections.abc import Mapping, MutableMapping

保存文件后,重新执行pip install customtkinter即可。

方法2:升级pip到兼容版本

打开命令提示符,执行以下命令升级pip,确保其适配Python 3.10:

python -m ensurepip --upgrade

升级完成后,再运行pip install customtkinter尝试安装。

方法3:使用python -m pip执行安装命令

有时候直接调用pip可能会触发旧的脚本,改用以下命令可以确保使用当前Python环境对应的pip:

python -m pip install customtkinter

内容的提问来源于stack exchange,提问作者random dude in the internet

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 10:02:55