没有模块名为'Symbol'。

4

我在使用pip时遇到了问题。最近,当我尝试安装任何软件包时都会出现错误。错误信息如下:(Pyautogui)。

Traceback (most recent call last):
  File "C:\Users\rati_\OneDrive\Desktop\PyAutoGUI-0.9.53.tar\PyAutoGUI-0.9.53\PyAutoGUI-0.9.53\setup.py", line 4, in <module>
    from setuptools import setup
  File "C:\Users\rati_\AppData\Local\Programs\Python\Python310\lib\site-packages\setuptools\__init__.py", line 12, in <module>
    from setuptools.extension import Extension
  File "C:\Users\rati_\AppData\Local\Programs\Python\Python310\lib\site-packages\setuptools\extension.py", line 7, in <module>
    from setuptools.dist import _get_unpatched
  File "C:\Users\rati_\AppData\Local\Programs\Python\Python310\lib\site-packages\setuptools\dist.py", line 16, in <module>
    import pkg_resources
  File "C:\Users\rati_\AppData\Local\Programs\Python\Python310\lib\site-packages\pkg_resources.py", line 29, in <module>
    import symbol
ModuleNotFoundError: No module named 'symbol'

我重新安装了pip和Python,但是无法解决错误... 在线上也没有找到相关的信息,所以我无法解决它。有什么提示吗?


1
你尝试过使用import symbol而不是import Symbol吗?我们在谈论symbol-please,对吗?如果是的话,你也可以尝试import symbol_please - Serge de Gosson de Varennes
尝试同时升级pip和setuptools:python3 -m pip install pip setuptools --upgrade - Domarm
我做了,它起作用了。感谢您的评论。 - R.A
2个回答

10

自从有历史以来,symbol 模块一直是标准库的一部分。它在 Python 3.9 中被声明为弃用,并在 3.10 版本中被最终移除。对于 Python 3.10,需要升级导入 symbol 的任何第三方库。在您的情况下,这些库是 pip/setuptools

pip install --upgrade pip setuptools

如果无法升级或没有更新到适用于Python 3.10的更高版本库,唯一的解决方案是将Python降级。

在更新到新版本的Python之后,如何才能出现过时的pip和setuptools?它们随着Python安装而来!它们根本不是第三方的,pip应该提供自己兼容的setuptools,即使你费尽心思地抑制安装pip,也应该可以从ensurepip引导它。 - Karl Knechtel
但我认为 pkg_resources 的存在本身只是因为 setuptools 将其放置在那里,对吧?就像我上次检查时发现的那样,Python 安装不能原地升级。 - Karl Knechtel
@KarlKnechtel "pkg_resources本身存在只是因为setuptools把它放在那里... ?" 是的,这就是为什么我的答案说“pip install --upgrade … setuptools”。"据我所知,Python安装无法原地升级。" 但是pip/setuptools以后可以降级。这可能是OP发生的事情,但你应该问他们。 - phd
啊,我猜可能是这样的……也许是由于系统包管理器不适当地固定了版本间接导致的? - Karl Knechtel
1
@KarlKnechtel 可以简单地使用 pip install -U setuptools==<某个旧版本> - phd
显示剩余2条评论

1

1
谢谢,这真的帮了我很多。尽管最后出现了一个错误信息。pip-accel 0.43 需要 pip<7.2,>=7.0,但你有 pip 22.3.1,它不兼容。 - victorkolis
1
错误信息意味着pip-accel 0.43仅与pip版本7.0和7.1兼容,不兼容其他版本。您可以尝试重新安装pip-accel以获取与pip版本22+兼容的新版本。如果它没有破坏任何东西,我认为您可以安全地忽略这个错误。 - Lampe2020

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接