yet*_*dev 1 python pip python-3.x
我使用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'
Run Code Online (Sandbox Code Playgroud)
并且命令$ 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'
Run Code Online (Sandbox Code Playgroud)
这些是重现的确切步骤,以及用于获取此处的唯一命令:
$ pip3.6 install --user fbchat
Run Code Online (Sandbox Code Playgroud)
只需site-packages手动删除文件夹中的包.
首先找到它:
python3.6 -c 'import enum; print(enum.__file__)'
Run Code Online (Sandbox Code Playgroud)
然后删除enum文件所在的整个目录,它将在一个site-packages目录中.删除enum34-<version>.dist-info旁边的文件.
因为您使用过--user,所以软件包安装在您的用户站点目录中.您也可以使用site模块获取位置:
python3.6 -m site --user-site
Run Code Online (Sandbox Code Playgroud)
所以你可以删除有问题的包:
rm -rf `python3.6 -m site --user-site`/enum
rm `python3.6 -m site --user-site`/enum-*.dist-info
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1395 次 |
| 最近记录: |