Как удалить пакет, установленный с помощью pip install --user
есть --user опция для pip, которая может установить пакет Python для каждого пользователя:
pip install --user [python-package-name]
я использовал эту опцию для установки пакета на сервере, для которого у меня нет корневого доступа. Теперь мне нужно удалить установленный пакет для текущего пользователя. Я попытался выполнить эту команду:
pip uninstall --user [python-package-name]
а я:
no such option: --user
как я могу удалить пакет, который я установил с pip install --user, кроме ручного поиска и удаления посылка?
Я нашел эту статью
pip не удается удалить из каталога per-user site-packages
который описывает, что удаление пакетов из каталога пользователя не поддерживается. Согласно статье, если она была реализована правильно, то с
pip uninstall [package-name]
установленный пакет также будет искать в каталогах пользователей. Но проблема все еще остается для меня. Что если один и тот же пакет был установлен как общесистемных, так и для каждого пользователя?
Что делать, если кому-то нужно настроить таргетинг на определенный каталог пользователей?
5 ответов:
Протестировав это с помощью Python 3.5 и pip 7.1.2 на Linux, ситуация выглядит так:
pip install --user somepackageустанавливается с$HOME/.local, и удаление его работает с помощьюpip uninstall somepackage.это правда или нет
somepackageтакже установлено общесистемное в то же время.если пакет установлен в обоих местах, будет удален только локальный. Удаление пакета в масштабах всей системы используя
pip, сначала удалите его локально, а затем снова запустите ту же команду удаления, сrootпривилегии.в дополнение к предопределенному каталогу установки пользователя,
pip install --target somedir somepackageустановит пакет вsomedir. Невозможно удалить пакет из такого места с помощьюpip. (Но есть несколько старый несвязанный запрос pull на Github, который реализуетpip uninstall --target.)так как только места
pipникогда удаление из общесистемного и предопределенного пользователя-локального, вам нужно запуститьpip uninstallкак соответствующий пользователь для удаления из локального каталога установки данного пользователя.
Как уже упоминал @thomas-lotze, в настоящее время pip tooling этого не делает, поскольку нет соответствующей опции --user. Но то, что я нахожу, это то, что я могу проверить ~/.локальный / bin и искать конкретный пункт#.# который, как мне кажется, соответствует параметру --user.
в моем случае:
antho@noctil: ~/.l/bin$ pwd /home/antho/.local/bin antho@noctil: ~/.l/bin$ ls pip* pip pip2 pip2.7 pip3 pip3.5а затем просто удалите с определенной версией pip.
Я запускаю версию Anaconda 4.3.22 и среду python3.6.1, и у меня была эта проблема. Вот история и исправление:
pip uninstall opencv-python # -- the original step. failed. ImportError: DLL load failed: The specified module could not be found.Я сделал это в моей среде python3. 6 и получил эту ошибку.
python -m pip install opencv-python # same package as above. conda install -c conda-forge opencv # separate install parallel to opencv pip-install opencv-contrib-python # suggested by another user here. doesn't resolve it.затем я попытался загрузить python3.6 и положить python3.DLL в папке и в различных папках. ничего не изменилось.
наконец, это исправлено это:
pip uninstall opencv-python(другая версия conda-forge все еще установлена) это осталась только версия conda, и это работает в 3.6.
>>>import cv2 >>>работает!
Comments