在 OS X 10.6.8 上,我使用 (至少 pip 告诉我) 卸载了一个包
sudo pip uninstall pkg_name
但是当我这样做时,包裹仍然出现
pip freeze
我尝试再次执行上面的卸载命令,并且 pip 告诉我该软件包未安装。
这里有什么问题?如何验证软件包是否已卸载?如果是这样,我可以刷新某种点子索引来纠正它吗?
在 OS X 10.6.8 上,我使用 (至少 pip 告诉我) 卸载了一个包
sudo pip uninstall pkg_name
但是当我这样做时,包裹仍然出现
pip freeze
我尝试再次执行上面的卸载命令,并且 pip 告诉我该软件包未安装。
这里有什么问题?如何验证软件包是否已卸载?如果是这样,我可以刷新某种点子索引来纠正它吗?
我以为你可能有两个pip
二进制文件,当你运行 as 时sudo
,你的 shell 首先选择了错误的一个。sudo
但是,如果您再次运行它并pip
删除该软件包,则没有任何意义。你是这样做的吗?
如果您没有两次运行相同pip
的命令,则可能有不同的二进制文件运行卸载和冻结。检查以下两个命令是否产生相同的输出:
$ sudo pip freeze
# ... sudo output
$ pip freeze
# ... normal output
无论如何,您可以使用以下命令检查软件包是否已安装:
$ python -c 'import pkg_name' &> /dev/null && echo installed || echo not installed
中没有刷新功能pip
。
我遇到了同样的问题,这是由于卸载文件后自制软件的符号链接损坏。
$ pip freeze | grep Magic
Magic-file-extensions==0.2
$ pip uninstall Magic-file-extensions
# say `y` at prompt / see it go through as success
$ pip freeze | grep Magic # still there :(
Magic-file-extensions==0.2
$ ll /usr/local/lib/python2.7/site-packages/ | grep Magic # symlink shows up red
├── [lrwxr-xr-x tomfuert 98 Feb 16 11:06] Magic_file_extensions-0.2-py2.7.egg-info -> ../../../Cellar/libmagic/5.17/lib/python2.7/site-packages/Magic_file_extensions-0.2-py2.7.egg-info
$ rm /usr/local/lib/python2.7/site-packages/Magic_file_extensions-0.2-py2.7.egg-info
$ pip freeze | grep Magic
# nothing!
如果您使用虚拟环境,请尝试使用 clean 命令。不要忘记须藤。
sudo pipenv clean