返回顶部
首页 > 资讯 > 后端开发 > Python >pip报TypeError: ‘type‘ object is not subscriptable错误
  • 547
分享到

pip报TypeError: ‘type‘ object is not subscriptable错误

pippython数学建模 2023-09-08 14:09:13 547人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

因为安装 Manim库,中间下载 colour 组件时因为更新pip版本到 23.1.2 ,与python3.9.0 适配的 pip version 19.2.3 版本矛盾,导致后续无法正常使用pyt

因为安装 Manim库,中间下载 colour 组件时因为更新pip版本到 23.1.2 ,与python3.9.0 适配的 pip version 19.2.3 版本矛盾,导致后续无法正常使用python,出现如下报错:

C:\Users\Lenovo>pip listTraceback (most recent call last):  File "e:\etools\Python 3.9.0\lib\runpy.py", line 193, in _run_module_as_main    return _run_code(code, main_globals, None,  File "e:\etools\python 3.9.0\lib\runpy.py", line 86, in _run_code    exec(code, run_globals)  File "E:\ETools\python 3.9.0\Scripts\pip.exe\__main__.py", line 5, in <module>  File "e:\etools\python 3.9.0\lib\site-packages\pip\_internal\cli\main.py", line 10, in <module>    from pip._internal.cli.autocompletion import autocomplete  File "e:\etools\python 3.9.0\lib\site-packages\pip\_internal\cli\autocompletion.py", line 10, in <module>    from pip._internal.cli.main_parser import create_main_parser  File "e:\etools\python 3.9.0\lib\site-packages\pip\_internal\cli\main_parser.py", line 9, in <module>    from pip._internal.build_env import get_runnable_pip  File "e:\etools\python 3.9.0\lib\site-packages\pip\_internal\build_env.py", line 19, in <module>    from pip._internal.cli.spinners import open_spinner  File "e:\etools\python 3.9.0\lib\site-packages\pip\_internal\cli\spinners.py", line 9, in <module>    from pip._internal.utils.logging import get_indentation  File "e:\etools\python 3.9.0\lib\site-packages\pip\_internal\utils\logging.py", line 29, in <module>    from pip._internal.utils.misc import ensure_dir  File "e:\etools\python 3.9.0\lib\site-packages\pip\_internal\utils\misc.py", line 40, in <module>    from pip._vendor.tenacity import retry, stop_after_delay, wait_fixed  File "e:\etools\python 3.9.0\lib\site-packages\pip\_vendor\tenacity\__init__.py", line 397, in <module>    FutureGenericT = futures.Future[t.Any]TypeError: 'type' object is not subscriptable

修复 pip 的思路很简单,出问题的并不是 python ,而是因为 pip 的版本等级太高,因此想办法能够把 pip 的版本降低就可以了。
此时使用 pip --upgrade +指定版本号 的方法完全不能用,因为是 pip 整个无法使用,同样会出现上述的报错。

之后查看了一下文件的修改时间,找到可能是 pip 升级后改动的地方↓
在这里插入图片描述
于是找了台没安装过python 3.9 的电脑,安装了一次,然后继续报错:

C:\Users\Lenovo>pipTraceback (most recent call last):  File "E:\ETools\python 3.9.0\lib\runpy.py", line 193, in _run_module_as_main    return _run_code(code, main_globals, None,  File "E:\ETools\python 3.9.0\lib\runpy.py", line 86, in _run_code    exec(code, run_globals)  File "E:\ETools\python 3.9.0\Scripts\pip.exe\__main__.py", line 4, in <module>ModuleNotFoundError: No module named 'pip._internal.cli.main'

解决这个ModuleNotFoundError: No module named 'pip._internal.cli.main'的问题,使用了这位大佬的方法:

文章《Python使用pip安装报错ModuleNotFoundError: No module named
‘pip._internal.cli.main‘的解决方法》:https://blog.csdn.net/qiguanjiezl/article/details/105762365

按照方法输入代码:

python -m ensurepippython -m pip install --upgrade pip setuptools wheel

在这里插入图片描述
这个报错解决,输入 pip list 检查,发现又弹出之前的问题了,还是老问题TypeError: 'type' object is not subscriptable
在这里插入图片描述
没办法,继续找思路,然后在其他人询问的类似帖子里有人提到直接卸载旧python再安装。
在这里插入图片描述
因为是 pip 本身报错,所以甚至不能使用 pip 来卸载python,于是直接上程序面板大法:
在这里插入图片描述

其中,经过实际测试,必须要这两个都卸载才行,如果只卸载本体 python 3.9,而不卸载 python launcher 一样会重复上面的报错,问题没有得到改善

在这里插入图片描述
p.s. 在这一步时,也尝试过直接对这两个进行修复,答案是一样没有解决问题,所以最后还是选择了卸载
博主电脑里还有其他自带的python,比如Anaconda里自带的,但是最后实际结果证明,不用担心要不要把如Anaconda等一样自带python的都重新安装,不需要卸载他们就能解决

卸载后结果如下:
在这里插入图片描述
卸载之后重新安装 python 3.9 。

顺便一提,需要把原本安装 python 的目录下的所有文件全部删除,不然还是一样会报错。
如果不想把之前 pip 安装过的各种小插件之类的重新一个一个下载,可以在删除前把 Lib 文件夹整个复制到别的地方。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
然后安装后,注意把这四个文件不要拷贝过去,会报错
在这里插入图片描述
python 3.9里正常的是这个:
在这里插入图片描述
安装完成后继续用 pip list 检测情况,
没有将之前的Lib复制过去时:
在这里插入图片描述
复制过去后:
在这里插入图片描述
至此,解决 pip报TypeError: 'type' object is not subscriptable错误 的问题。

来源地址:https://blog.csdn.net/m0_46185017/article/details/131034926

--结束END--

本文标题: pip报TypeError: ‘type‘ object is not subscriptable错误

本文链接: https://lsjlt.com/news/400044.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作