Python, anaconda, Spyder - удаление пакета python с помощью pip НЕ РАБОТАЕТ в Spyder + ipython

Используя pip, я могу успешно устанавливать новые пакеты в ipython, работающем в среде Spyder. Все, что мне нужно для запуска, это:

!python -m pip install mypackage

Однако попытка удалить пакеты, похоже, вообще не работает. Когда я бегу:

!python -m pip uninstall mypackage

Консоль переходит в состояние зависания. Это не совсем «зависает», потому что ни Spyder, ни консоль не зависают, а команда просто ничего не возвращает.

Я прилагаю снимок экрана, чтобы пояснить, что я имею в виду. На скриншоте показано, что происходит ПОСЛЕ того, как я нажимаю ENTER в этой строке - и ничего не происходит!

Что-нибудь знает почему?

Python, anaconda, Spyder - удаление пакета python с помощью pip НЕ РАБОТАЕТ в Spyder + ipython

Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
0
14 506
3

Ответы 3

Вы не должны использовать pip со Spyder. Это может сломать весь ваш дистрибутив. Spyder является частью пакета Anaconda, и вам следует использовать команду conda вместо pip. Команда conda работает аналогично команде pip. Вместо пакета установки pip вы должны использовать пакет установки conda.

(Сопровождающий Spyder здесь) И pip, и conda не предназначены для запуска внутри одной из наших консолей IPython, потому что они ожидают, что они будут работать в реальном системном терминале (xterm, Terminal.app или cmd.exe).

В этом случае pip ожидает ввода от пользователя (подтверждения того, что он / она действительно хочет удалить пакет). Это подтверждение не может быть отображено на наших консолях, и это выглядит так, как будто оно заблокировано.

Что вы можете сделать, так это передать опцию -q в pip, чтобы избежать подтверждения. Но в целом использование pip и conda внутри наших консолей - плохая идея по причинам, о которых я говорил выше.

Привет, Карлос, большое спасибо за ответ. Приятно получить некоторые идеи от Spyder. К сожалению, ваше предложение об использовании -q все еще не работает. Моя новая команда: «! Python -m pip -q удалить тензор потока». И все равно зависает. Я пытался использовать собственную командную строку, но pip даже не распознавался, когда я запускал его на cmd. Должны быть проблемы с переменными среды, но я не знаю, как их решить. В любом случае, для меня проще всего было бы запустить pip на iPython (я знаю, что вы этого не советуете), но -q не помогает.

ZXY 30.11.2018 12:24

Как я уже сказал, прекратите использовать pip с наших консолей и попробуйте использовать его с терминала. Если он не обнаружен по умолчанию, вам, вероятно, нужно активировать conda или venv, на котором вы его сначала установили.

Carlos Cordoba 30.11.2018 14:42

У меня 64-битная машина с Windows 10, я установил spyder с pip, и он не мог работать. поэтому для удаления я просто использовал эту команду

pip uninstall spyder

однако, если spyder был установлен вместе с Anaconda, при удалении Anacanda будут удалены все его пакеты, включая spyder.

Другие вопросы по теме