gpt4 book ai didi

python - 在 Python 3.x 上安装 enum34 会破坏 Python3.x 的 pip

转载 作者:太空宇宙 更新时间:2023-11-04 08:39:28 38 4
gpt4 key购买 nike

我使用 PythonAnywhere 托管了一些需要 fbchat 模块的 Python 脚本。我在没有使用 virtualenv 的情况下在 Python 3.6(使用用户方案)上安装了模块,并且模块安装了 enum34 作为依赖项。

我知道 enum34 与高于 3.4 的 Python 版本不兼容。但是我现在也无法卸载它,因为调用 pip3.x 会出现此错误:

Traceback (most recent call last):
File "/usr/local/bin/pip3.6", line 4, in <module>
import re
File "/usr/lib/python3.6/re.py", line 142, in <module>
class RegexFlag(enum.IntFlag):
AttributeError: module 'enum' has no attribute 'IntFlag'

和命令 $ python3.6 -m pip 给出:

Traceback (most recent call last):
File "/usr/lib/python3.6/runpy.py", line 183, in _run_module_as_main
mod_name, mod_spec, code = _get_module_details(mod_name, _Error)
File "/usr/lib/python3.6/runpy.py", line 142, in _get_module_details
return _get_module_details(pkg_main_name, error)
File "/usr/lib/python3.6/runpy.py", line 109, in _get_module_details
__import__(pkg_name)
File "/usr/local/lib/python3.6/dist-packages/pip/__init__.py", line 4, in <module>
import locale
File "/usr/lib/python3.6/locale.py", line 16, in <module>
import re
File "/usr/lib/python3.6/re.py", line 142, in <module>
class RegexFlag(enum.IntFlag):
AttributeError: module 'enum' has no attribute 'IntFlag'

这些是重现的确切步骤,以及用于到达此处的唯一命令:

$ pip3.6 install --user fbchat

最佳答案

只需从您的 site-packages 中删除包手动文件夹。

首先找到它:

python3.6 -c 'import enum; print(enum.__file__)'

然后删除整个enum文件所在的目录,它将位于 site-packages 中目录。删除 enum34-<version>.dist-info旁边还有文件。

因为你使用了--user ,该软件包已安装在您的用户站 pip 目录中。您可以使用 site 获取位置模块也是:

python3.6 -m site --user-site

所以你可以删除有问题的包:

rm -rf `python3.6 -m site --user-site`/enum 
rm `python3.6 -m site --user-site`/enum-*.dist-info

关于python - 在 Python 3.x 上安装 enum34 会破坏 Python3.x 的 pip,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45896474/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com