Я хотел бы начать с перечисления пакетов Python, которыми управляет apt-get
(следующая строка занимает несколько секунд, будьте терпеливы):
$ for pyfile in `ls /usr/lib/python2.7/dist-packages`; do dpkg -S "/usr/lib/python2.7/dist-packages/${pyfile}" | sed 's/:.*//g'; done | sort -u
Примечание: при необходимости замените 2.7 на ту версию Python, которая вас интересует.
Затем удалите пакеты, которые вы установили вручную. Если вы не уверены, какие из них вы установили, вы можете получить список всех пакетов, установленных вручную, с помощью следующей команды (см. Этот вопрос ):
$ comm -23 <(apt-mark showmanual | sort -u) <(gzip -dc /var/log/installer/initial-status.gz | sed -n 's/^Package: //p' | sort -u)
Затем удалите пакеты Python, которые вы установили вручную, например:
$ sudo apt-get remove python-tk python-scipy
Далее вы хотите узнать, какие пакеты вы установили с помощью pip:
$ ls -ltd /usr/local/lib/python2.7/dist-packages/*
Эта команда выводит содержимое каталога установки pip, отсортированного по дате последнего изменения, что упрощает поиск установленных вами пакетов. Например, я установил gcloud
инструмент Google, который устанавливает несколько пакетов pip, которые я не хочу удалять, но просматривая список, легко увидеть, что все они были установлены в одно и то же время, поэтому я знаю, какие из них мне следует оставить, и какие из них я могу удалить. Перед удалением любого пакета pip вы должны сделать снимок списка установленных пакетов:
$ sudo pip freeze > $HOME/pip_freeze_snapshot.txt
Затем просто удалите нужные пакеты, например:
$ sudo pip uninstall py pytest
Наконец, не забывайте, что некоторые пакеты pip могут быть установлены в вашем пользовательском каталоге. Возможно, вы в порядке с этим, но если нет, вы можете перечислить их:
$ ls -ltd $HOME/.local/lib/python2.7/site-packages/*
Если вы хотите избавиться от всех этих пакетов, вы можете просто удалить этот каталог. В противном случае просто удалите отдельные пакеты, например:
$ pip uninstall tensorflow
Не забудьте проверить наличие других версий Python (например, 3.5).