Как настроить среду разработки с помощью Mamba

Как настроить среду разработки с помощью Mamba

Если вы программист, особенно в области науки о данных или анализа данных, вы, вероятно, страдали от головной боли из-за пакетов, входящих в дистрибутив Linux. Что, если бы существовала возможность создать отдельную среду программирования для ваших проектов, изолированную от системы, без необходимости настраивать виртуальную машину? Возможно, Mamba — это то, что вам нужно.

Что такое Мамба?

Как настроить среду разработки с помощью Mamba

Mamba — это менеджер пакетов, предназначенный для использования в рамках одного проекта. Он похож на менеджер пакетов в современной системе Linux, но вместо управления пакетами программного обеспечения для всей системы вы создаёте среды только для тех пакетов, которые нужны вашему проекту. Mamba — это новая реализация менеджера пакетов Conda. Изначально Conda был написан на Python, но для повышения скорости Mamba была переписана на C++.

Mamba, как и Conda, популярна в области науки о данных, статистики, биостатистики и анализа данных. Похоже, что она имеет сходство с Python, судя по названию, связанному со змеей. Название, по-видимому, выбрано из-за скорости змеи, в честь которой она и названа, поскольку Mamba — более быстрая версия Conda.

Mamba выполняет многие функции, характерные для менеджера пакетов, например, поиск пакетов, их установку и обновление. Вы создаёте среды, которые можете активировать или деактивировать по своему усмотрению. Вы можете установить несколько сред на одном компьютере.

Почему Мамба?

Если вы используете Linux или другую Unix-подобную систему для разработки, вы можете задаться вопросом, зачем вам что-то вроде Mamba. Разве у вас ещё нет менеджера пакетов?

Программное обеспечение, устанавливаемое в менеджере пакетов, предназначено для всей системы. Многие системы включают интерпретатор Python, но он предназначен для запуска скриптов и других программ, зависящих от Python, а не для поддержки ваших программных проектов. Если вам нужна более новая версия Python для вашего кода, чем та, что предоставляется системой, и вы её обновляете, другие скрипты и программы, зависящие от версии, поставляемой с вашей системой, могут перестать работать.

Как настроить среду разработки с помощью Mamba

Mamba решает эту проблему, позволяя создавать среды для задач, изолированные от базовой системы. Если вы работаете в области науки о данных или аналитики, вы можете определить среду только для своей работы, не трогая базовую систему. Вы можете активировать среду, когда захотите выполнить какие-то вычисления, и выключать её после завершения.

Я использовал Mamba для нескольких статей на HTG, включая недавнюю статью о создании предиктора цен на ноутбуки.

Установка Мамбы

Установка Mamba в большинстве Unix-подобных систем довольно проста. Я покажу, как установить Mamba в системе Debian Linux.

Вы можете скачать и установить Mamba, следуя простым инструкциям прямо со страницы документации Mamba. Для начала вам нужно скачать дистрибутив Miniforge. Это минимальная версия Mamba, содержащая все необходимые для начала работы основные файлы.

Если у вас установлен curl, все, что вам нужно сделать, это вставить строку, чтобы загрузить его в Unix-подобной системе:

curl -L -O «https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-$(uname)-$(uname -m).sh»

Как настроить среду разработки с помощью Mamba

После загрузки вы можете запустить установочный скрипт:

bash Miniforge3-$(uname)-$(uname -m).sh

Как настроить среду разработки с помощью Mamba

Скрипт попросит вас нажать Enter, если вы хотите продолжить, а затем ознакомиться с условиями лицензирования. Поскольку Mamba — проект с открытым исходным кодом, это, вероятно, не составит для вас труда. Вам нужно будет ввести «yes» или «no», чтобы принять или отклонить условия лицензирования. Чтобы принять условия и продолжить установку, введите «yes» в приглашении.

После этого вам нужно будет подтвердить каталог, куда вы хотите установить пакеты Conda. По умолчанию это будет ваш домашний каталог с подкаталогом «miniforge».

После установки miniforge вам будет предложено отредактировать скрипт запуска оболочки по умолчанию, например .bashrc или .zshrc, в зависимости от используемой оболочки, чтобы Mamba автоматически запускалась при запуске оболочки. Это может пригодиться, если вы планируете активно работать с Mamba. Это упростит активацию и деактивацию окружений Mamba. Введите «yes» ещё раз для подтверждения.

Создать среду

Открыв новый терминал, вы, возможно, заметили что-то необычное в строке приглашения оболочки. Вы увидите что-то вроде «(base)». Это означает, что Mamba активирована с базовым окружением. Именно так это и выглядит: минимальное базовое окружение. Вы можете проверить это, набрав «python» в командной строке. Во вступительном сообщении вы увидите, что эта версия Python «упакована conda-forge».

Как настроить среду разработки с помощью Mamba

Вы можете установить другие пакеты в эту базовую среду, но вам это не нужно. Суть Mamba — разместить все необходимые вам пакеты в одной среде, а те, которые нужны для другого проекта, — в другой.

Создавать окружения легко. Для этого используйте команду mamba create с опцией «-n», за которой следует имя создаваемого окружения и список пакетов, которые нужно установить в этом окружении.

Например, чтобы создать среду для статистических вычислений с именем «stats» с пакетами Python NumPy, SciPy и pandas, используйте следующую команду:

mamba create -n stats numpy scipy pandas

Как настроить среду разработки с помощью Mamba

Как и любой другой менеджер пакетов, он определит пакеты и их зависимости, а затем попросит подтвердить их установку. Поскольку установка выполняется в вашем домашнем каталоге, вам не нужно использовать sudo или вводить пароль root.

Как настроить среду разработки с помощью Mamba

Для активации среды статистики используйте команду «mamba activate»:

мамба активировать статистику

Как настроить среду разработки с помощью Mamba

В командной строке вы увидите, что имя активной среды изменилось с «base» на «stats». Теперь вы можете использовать установленные в этой среде пакеты.

Давайте проверим это, запустив интерактивный интерпретатор Python.

Мы можем импортировать NumPy и все заработает.

импортировать numpy как np
np.mean([1,2,3,4])

Ответ будет выведен в виде числа с плавающей точкой 2.5.

Установка дополнительных пакетов

Часто вы понимаете, что вам может понадобиться добавить пакеты в существующую среду. Например, мне больше нравится интерпретатор IPython, чем стандартный. Добавить его можно двумя способами.

Как настроить среду разработки с помощью Mamba

Я могу добавить его, используя опцию -n с «mamba install»

mamba install -n ipython

Как настроить среду разработки с помощью Mamba

Я также могу выполнить команду «mamba install» в активном окружении, чтобы установить пакет в нём. Поскольку «stats» уже активен, я так и сделаю. Программа попросит подтвердить изменения, а затем установит IPython.

Я могу запустить IPython в оболочке:

ипитон

Чтобы деактивировать среду после завершения работы с ней, я могу использовать команду «mamba deactivate». Чтобы убедиться, что IPython был установлен в среду «stats», при попытке запустить его после деактивации возникает ошибка «команда не найдена».

Для поиска пакетов вы можете воспользоваться командами поиска «mamba search» или «mamba repoquery».

Например, чтобы найти пакеты, относящиеся к Jupyter, популярному интерфейсу блокнотов для научных вычислений:

мамба поиск jupyter

Как настроить среду разработки с помощью Mamba

Обновление сред Mamba

Как и другие менеджеры пакетов, Mamba позволяет обновлять пакеты по мере выхода новых версий. Для этого можно использовать команду «mamba update».

Например, чтобы обновить все пакеты в среде статистики:

обновление мамбы —все -n статистика

Как настроить среду разработки с помощью Mamba

В качестве альтернативы, вы можете использовать «—update-all» вместо «—all» в команде, но последний вариант короче. Поскольку это новая установка, при запуске этой команды обновлять нечего.

С помощью Mamba вы можете создавать среды, подходящие для ваших программных проектов, активировать и деактивировать их, а также обновлять по своему усмотрению. Наличие менеджера пакетов поверх вашего менеджера пакетов может показаться странным, но с Mamba ваш программный проект будет идти гораздо более гладко.

Валентин Павлов/ автор статьи
Страсть Влентина к играм началась с Resident Evil, и с тех пор он не переставал играть в хоррор-игры. Пишет экспертные руководства для самых сложных игр и обзоры для самых громких релизов. Является магистром журналистики и имеет степень бакалавра лингвистики. Любимые игры: GTA 5, Silent Hill 2, Call of Duty: Modern Warfare 2, Heavy Rain, Metro 2033 и другие.
Понравилась статья? Поделиться с друзьями:
Добавить комментарий