Почему не нужно использовать sudo pip? Я не до конца понимаю этот аспект. Мне предложили задать отдельный вопрос. Многим другим людям это тоже может быть полезно знать.
Ответ Почему НЕ стоит использовать sudo pip install? При установке пакета вы не просто размещаете его в своей файловой системе, но и выполняете скрипт setup.py. Поскольку в PyPI загрузить пакет может кто угодно, вы не можете быть уверены, что setup.py не содержит код, выполнение которого под пользователем root нежелательно/опасно/недопустимо. По уровню опасности это равносильно выполнению под суперпользователем shell-скрипта "из облака": wget -O - http://example.comome/unsafecript.sh | bash Как же быть? Вариант 1 Кроме случаев, когда вам крайне необходимо установить пакет из-под root-а, вы можете использовать pip install --user mypackage чтобы установить пакет в репозиторий текущего пользователя $HOME/.local/lib/pythonx.yite-packages/. Вариант 2 Использовать изолированные окружения, например virtualenv. В этом случае у вас под рукой будет неограниченное количество рабочих окружений (например, под каждый проект, с разными версиями python), которые не будут мешать друг другу. Пакеты будут храниться в $HOME/.virtualenvs/$ENVNAME/lib/pythonx.yite-packages/ вместе с нужной версией python и сторонними бинарниками, а переключение окружений выполняется командой workon $ENVNAME. IDE, вроде PyCharm, знают про виртуальные окружения и умеют с ними работать.