2 способа установки Python в домашней директории
Python разросся, у него появляется все больше и больше версий. Однако новые версии не всегда поддерживаются разработчиками библиотек и фреймворков, например, тот же Apache Spark пока не совмести с Python 3.8. Поэтому приходится иметь дело с несколькими версиями на своем компьютере. В этой статье мы расскажем, как установить необходимую версию Python локально на компьютер в домашней директории пользователя 2 способами: через менеджер Conda и непосредственная установка из исходного кода.
Установка Python через Сonda
Простой способ установки Python — это использование системы управления пакетами и окружениями Conda. Она создает, сохраняет, подгружает и переключает среды, с установленными на ней зависимостями и версиями программ, на локальном компьютере (сервере). Применяют его в основном Python-разработчики, но и для других языков тоже подойдет. В репозитории conda-forge попадают только проверенные пакеты, поэтому придется немного подождать свежих версий библиотек. Этим Conda отличается от pip, в котором главный репозиторий PyPI переполнен самыми новыми пакетами. Помимо этого, Conda медленнее подгружает пакеты, чем pip. Зато не Conda зависит от программы, а она от Conda.
На официальном сайте имеется два вида этой системы: Miniconda и Anaconda. Различие лишь в том, что Anaconda уже идет с предустановленными библиотеками и имеет графический интерфейс. С другой стороны, Miniconda — это минималистичная программа с CLI-интерфейсом без лишних пакетов. Также Anaconda требует 3 Гб свободного места, а Miniconda только 400 Мб. Если вам хватает командной строки, то используйте Miniconda.
Чтобы установить Miniconda скачайте скрипт, соответствующей вашей ОС, и следуйте инструкции по установке, опять же в соответствии со своей ОС.
По умолчанию используется базовая среда (base). Для отдельного проекта лучше создать свою среду с нужной версией Python. Для создания своей среды используется аргумент create. Например, следующая команда создаст виртуальную среду dev, которая будет использовать Python 3.6:
(base) $ conda create — name dev python=3.6
(base) $ conda actiavate dev
(dev) $ which python
/home/roman/.config/miniconda3/envs/dev/bin/python
Среды и настройки находятся в директории $HOME/miniconda3 (если вы не меняли эту директорию).
Чтобы установить пакет через Conda дайте команду:
$ conda install numpy
Часто при установке пакета можно увидеть аргумент -c conda-forge, что значит “скачать пакет с репозитория conda-forge”.
Непосредственная установка Python из исходного кода
Здесь и далее подразумевается локальная установка Python для отдельного пользователя. Не устанавливайте так Python в директории администратора, иначе можете запутаться в версиях. Если у вас только один пользователь, и он администратор, то рекомендуем создать ещё одного пользователя (команда useradd).
До непосредственной установки может понадобиться ещё доустановить на некоторые зависимости:
$ sudo apt install libreadline-gplv2-dev \
libncursesw5-dev \
libssl-dev \
libsqlite3-dev \
tk-dev \
libgdbm-dev \
libc6-dev \
libbz2-dev \
liblzma-dev
Здесь и далее вам больше не потребуются права sudo (если вы его используйте).
Установим Python 3.6 в директорию $HOME/.local/python. Мы могли бы установить все необходимое прямо в $HOME/local, а не в отдельную директорию; мы это делаем, чтобы проще было его удалить. Если же вы допускаете установку в .local и вам потребовалось удалить скомпилированный через configure Python, то воспользуйтесь советом на stackoverflow (придется префикс на свой поменять).
Итак, скачаем, распакуем и установим флаг на исполнение нужным файлам:
mkdir ~/.local/python
cd ~/.local/python
wget https://www.python.org/ftp/python/3.6.9/Python-3.6.9.tgz
tar zxfv Python-3.6.9.tgz
find ~/.local/python -type d | xargs chmod 0755
cd Python-3.6.9
Затем нужно скомпилировать:
./configure — prefix=~/.local/python
make && make install
Аргумент prefix обязательно нужно указать, иначе make начнет установку в директорию /usr/local, предварительно потребовав разрешение администратора, а это нам не требуется, поскольку мы работаем в домашней директории пользователя.
Теперь нужно указать пути в .bash_profile, если у вас bash, или .zshenv, если у вас zsh. Добавьте в него следующие команды:
PYP=$HOME/.local/python
PYTHONPATH=$PYP/Python-3.6.9
export PATH=$PYTHONPATH:$PYP/bin:$PATH
export PYTHONPATH
Перезайдите или просто запустите команду source .bash_profile. Теперь Python ссылается на локальную директорию:
$ which python
/home/roman/.local/python/Python-3.6.9/python
Если у вас не запускается пкетный менеджер pip, то, скорее всего, вам необходимо запускать его следующим образом:
$ python -m pip
Можете создать ему alias, чтобы не вводить такую длинную команду:
$ echo ‘alias pip=”python -m pip”’ >> ~/.bash_profile
Виртуальное окружение создается через venv:
$ python -m venv dev
$ source dev/bin/activate
(dev) $ pip list
О том, как работать с Python и правильно его использовать для решения задач Data Science на специализированных курсах по Python в лицензированном учебном центре обучения и повышения квалификации разработчиков, менеджеров, архитекторов, инженеров, администраторов, Data Scientist’ов и аналитиков Big Data в Москве.
- FUNP: Основы языка Python для анализа данных и решения задач машинного обучения
- DPREP: Подготовка данных для Data Mining на Python
- PYML: Машинное обучение на Python
Смотреть расписание
Записаться на курс
Источники
https://docs.conda.io/en/latest/