Eu sei que pip
é um gerenciador de pacotes para pacotes python. No entanto, vi a instalação no site do IPython usarconda
para instalar o IPython.
Posso usar pip
para instalar o IPython? Por que devo usar conda
como outro gerenciador de pacotes python quando já tenhopip
?
Qual é a diferença entre pip
e conda
?
conda
/enpgk
é dirigido anew users who want to get up and running with minimal effort
: copa / anaconda são environement autônomo, que não interferem com python sistema (como venv mas mais poderoso). BTW IPyhton, não ipython (superior caso I)Respostas:
Citando a partir do blog Conda :
Portanto, o Conda é uma ferramenta e instalador de empacotamento que visa fazer mais do que aquilo que
pip
faz; lida com dependências da biblioteca fora dos pacotes Python, bem como dos próprios pacotes Python. A Conda também cria um ambiente virtual, comovirtualenv
faz.Como tal, talvez o Conda deva ser comparado ao Buildout , outra ferramenta que permite lidar com tarefas de instalação Python e não Python.
Como o Conda introduz um novo formato de embalagem, você não pode usar o
pip
Conda de forma intercambiável;pip
Não é possível instalar o formato do pacote Conda. Você pode usar as duas ferramentas lado a lado (instalandopip
comconda install pip
), mas elas também não interoperam.Desde que escrevemos esta resposta, a Anaconda publicou uma nova página sobre Entendendo Conda e Pip , que também reflete isso:
e mais adiante
fonte
pip install
.Aqui está um breve resumo:
pip
conda
conda build
que cria pacotes a partir do código-fonte, masconda install
instala coisas a partir de pacotes Conda já construídos.Em ambos os casos:
Os dois primeiros pontos da Conda são realmente o que o torna vantajoso em relação ao pip para muitos pacotes. Como o pip é instalado a partir do código-fonte, pode ser doloroso instalar coisas com ele, se você não conseguir compilar o código-fonte (isso é especialmente verdade no Windows, mas pode ser verdade no Linux, se os pacotes tiverem uma biblioteca C ou FORTRAN difícil) dependências). O Conda é instalado a partir do binário, o que significa que alguém (por exemplo, Continuum) já fez o trabalho duro de compilar o pacote e, portanto, a instalação é fácil.
Existem também algumas diferenças se você estiver interessado em criar seus próprios pacotes. Por exemplo, o pip é construído sobre as ferramentas de instalação, enquanto o Conda usa seu próprio formato, que tem algumas vantagens (como ser estático e, novamente, independente do Python).
fonte
pip install --use-wheel <package>
instalará um pacote construído. Veja aqui: wheel.readthedocs.org/en/latest . No entanto, minha experiência pessoal com a roda é que há tão poucos pacotes científicos disponíveis que são puramente acadêmicos. E é claro que a instalação do pip geralmente não funciona no Windows se o ambiente de compilação não estiver configurado exatamente da maneira certa. Então, no momento, conda ftw.As outras respostas fornecem uma descrição correta dos detalhes, mas quero destacar alguns pontos de alto nível.
O pip é um gerenciador de pacotes que facilita a instalação, atualização e desinstalação de pacotes python . Também funciona com ambientes python virtuais .
O conda é um gerenciador de pacotes para qualquer software (instalação, atualização e desinstalação). Também funciona com ambientes de sistema virtual .
Um dos objetivos do design do conda é facilitar o gerenciamento de pacotes para toda a pilha de software exigida pelos usuários, das quais uma ou mais versões python podem ser apenas uma pequena parte. Isso inclui bibliotecas de baixo nível, como álgebra linear, compiladores, como mingw no Windows, editores, ferramentas de controle de versão como Hg e Git ou qualquer outra coisa que exija distribuição e gerenciamento .
Para gerenciamento de versão, o pip permite alternar e gerenciar vários ambientes python .
O Conda permite alternar e gerenciar vários ambientes de uso geral, nos quais várias outras coisas podem variar no número da versão, como bibliotecas C, compiladores, suítes de teste ou mecanismos de banco de dados e assim por diante.
A Conda não é centrada no Windows, mas no Windows é de longe a solução superior atualmente disponível quando pacotes científicos complexos que exigem compilação precisam ser instalados e gerenciados.
Quero chorar quando penso em quanto tempo perdi tentando compilar muitos desses pacotes via pip no Windows ou depurar
pip install
sessões com falha quando a compilação era necessária.Como ponto final, o Continuum Analytics também hospeda (gratuito) o binstar.org (agora chamado anaconda.org ) para permitir que desenvolvedores regulares de pacotes criem suas próprias pilhas de software personalizadas (integradas!), Das quais seus usuários de pacotes poderão usar
conda install
.fonte
Keras
no meu código, instalei o anaconda no meu mac e o Keras estáconda
instalado epip
instalado. Então, ao executar meu código no terminal, como sei qualkeras
está sendo importado (opip
um ou oconda
outro)?Para não confundi-lo ainda mais, mas você também pode usar o pip dentro do seu ambiente conda, que valida os comentários gerais e específicos dos gerentes python acima.
você também pode adicionar pip aos pacotes padrão de qualquer ambiente, para que ele esteja sempre presente, para que você não precise seguir o trecho acima.
fonte
fully supported
?fully recommended
implica, melhor usar pip do que conda, dentro de um ambiente de condomínio, na minha opinião, e não tenho certeza de que é isso que você / eles querem dizer?Cite o artigo da Conda para Data Science no site da Continuum:
fonte
Citando Conda: Mitos e Equívocos (uma descrição abrangente):
...
Mito 3: Conda e pip são concorrentes diretos
Realidade: Conda e pip servem a propósitos diferentes e apenas competem diretamente em um pequeno subconjunto de tarefas: a instalação de pacotes Python em ambientes isolados.
Pip, que está para P ip I nstalls P ackages, é gerenciador de pacotes oficialmente sancionada de Python, e é mais comumente usado para instalar pacotes publicados no Python Package Index (PyPI). O pip e o PyPI são governados e suportados pela Python Packaging Authority (PyPA).
Em resumo, o pip é um gerenciador de uso geral para pacotes Python; conda é um gerenciador de ambiente de plataforma cruzada, independente do idioma. Para o usuário, a distinção mais saliente é provavelmente a seguinte: pip instala pacotes python em qualquer ambiente; O conda instala qualquer pacote nos ambientes conda. Se tudo o que você está fazendo é instalar pacotes Python em um ambiente isolado, conda e pip + virtualenv são basicamente intercambiáveis, devido a alguma diferença no tratamento de dependências e na disponibilidade de pacotes. Por ambiente isolado, quero dizer um conda-env ou virtualenv, no qual você pode instalar pacotes sem modificar a instalação do sistema Python.
Mesmo deixando de lado o Mito 2, se focarmos apenas na instalação de pacotes Python, conda e pip atenderão a diferentes públicos e diferentes propósitos. Se você deseja, por exemplo, gerenciar pacotes Python em uma instalação existente do sistema, a conda não pode ajudá-lo: por design, ele pode instalar pacotes apenas em ambientes conda. Se você quiser, digamos, trabalhar com os muitos pacotes Python que dependem de dependências externas (NumPy, SciPy e Matplotlib são exemplos comuns), ao rastrear essas dependências de maneira significativa, o pip não pode ajudá-lo: por design, ele gerencia pacotes Python e apenas pacotes Python.
Conda e pip não são concorrentes, mas ferramentas focadas em diferentes grupos de usuários e padrões de uso.
fonte
Para usuários do WINDOWS
A situação das ferramentas de embalagem "padrão" está melhorando recentemente:
no próprio pypi, agora existem 48% dos pacotes de rodas a partir de setembro. 11 de 2015 (acima de 38% em maio de 2015, 24% em setembro de 2014),
o formato wheel agora é suportado pronto para uso pelo python 2.7.9 mais recente,
A situação das ferramentas de embalagem "padrão" + "ajustes" também está melhorando:
você pode encontrar quase todos os pacotes científicos no formato wheel em http://www.lfd.uci.edu/~gohlke/pythonlibs ,
o projeto mingwpy pode trazer um dia um pacote de 'compilação' para os usuários do Windows, permitindo instalar tudo da fonte quando necessário.
A embalagem "Conda" permanece melhor para o mercado em que atua e destaca áreas em que o "padrão" deve melhorar.
(além disso, a especificação de dependência de esforços múltiplos, no sistema de rodas padrão e no sistema conda, ou buildout, não é muito pitônica, seria bom se todas essas técnicas básicas da embalagem pudessem convergir por meio de um tipo de PEP.
fonte
pip
é um gerenciador de pacotes.conda
é um gerenciador de pacotes e um gerenciador de ambiente.Detalhe:
Referências
fonte
Claro, ambos (primeira abordagem na página)
e (terceira abordagem, a segunda é
conda
)são maneiras oficialmente recomendadas de instalar .
Como dito aqui :
Conda supera pip em ( YMMV )
Isso é amplamente respondido por todos os outros.
fonte
pip
é apenas para Pythonconda
é apenas para o Anaconda + outros pacotes científicos, como dependências R, etc. Nem todo mundo precisa do Anaconda que já vem com o Python. O Anaconda é principalmente para quem faz aprendizado de máquina / aprendizado profundo etc. O desenvolvedor casual do Python não executa o Anaconda em seu laptop.fonte
Talvez eu tenha encontrado outra diferença de natureza menor. Eu tenho meus ambientes python sob
/usr
vez de/home
ou o que quer. Para instalar nele, eu precisaria usarsudo install pip
. Para mim, o efeito colateral indesejadosudo install pip
foi um pouco diferente do que o que são amplamente relatados em outros lugares: depois de fazer isso, eu tive que correrpython
comsudo
, a fim de importar qualquer um dossudo
pacotes Instalada. Desisti disso e, eventualmente, descobri que poderia usarsudo conda
para instalar pacotes em um ambiente no/usr
qual então importava normalmente sem a necessidade desudo
permissãopython
. Eu até costumavasudo conda
consertar um quebradopip
ao invés de usarsudo pip uninstall pip
ousudo pip --upgrade install pip
.fonte