A principal semelhança entre apt
/ apt-get
, pip
, easy_install
e conda
é que eles são gerenciadores de pacotes; há mais diferenças entre eles do que semelhanças.
Vamos começar com coisas fáceis primeiro. Nunca use easy_install
sobre pip
, e as razões para isso são eloquentemente explicadas nas várias respostas altamente votadas ao link . Em suma, easy_install
é obsoleto e pip
é sempre preferível.
apt
/ apt-get
Você usa apt
ou apt-get
para instalar nos pacotes Ubuntu do sistema / nível global, incluindo os do Python, encontrados nos repositórios do APT. Você precisa executar este comando com sudo
. Nos repositórios do Ubuntu, os nomes para os pacotes do Python 2 são prefixados com python
enquanto que para o Python 3 são prefixados com python3
, então fica claro quais pacotes você precisa instalar dependendo de qual versão do interpretador Python você pretende usar. Alguns exemplos incluem python-numpy
e python3-numpy
.
pip
pip
significa "Pip Instala Pacotes" ou "Pip Instala o Python" , que é um acrônimo recursivo. Como o nome sugere, você usa pip
para instalar os pacotes do Python somente . No nível do sistema / global, você pode instalar pip
para o Python 2 usando sudo apt install python-pip
e para o Python 3 usando sudo apt install python3-pip
. No Ubuntu, pip install
usa como padrão pip install --user
. O mesmo acontece se você substituir pip
por pip3
. Isso significa que os pacotes Python são instalados por padrão por usuário e não no nível do sistema / global. Isso é bom porque não há bons motivos para disponibilizar pacotes Python para todos os usuários por padrão. Você pode instalá-los globalmente executando o comando com sudo
, mas como expliquei no link , isso é uma segurança risco e deve não ser feito.
A melhor maneira de gerenciar dependências do Python é usar ambientes virtuais. Um exemplo disso é o virtualenv, que pode ser instalado usando sudo apt install virtualenv
. Eu escrevi uma resposta curta sobre isso no link , mas há outras respostas muito boas para a pergunta sobre a qual você pode ler.
conda
conda
é um gerenciador de pacotes que também permite criar ambientes virtuais, portanto, é algo como pip
+ virtualenv
. De acordo com o link , conda
também pode "lidar com dependências de bibliotecas fora dos pacotes Python, assim como os próprios pacotes Python" . Eu pessoalmente não uso o Anaconda / Conda na minha máquina Ubuntu, pois pip
e virtualenv
são bons o suficiente para minhas necessidades, mas você deve definitivamente verificar conda
.