Perché la gente usa Anaconda con Python?
Perché Anaconda? Allora devi chiederti - quali sono le alternative?
Come mostrato nei metodi di installazione disponibili per Tensorflow:
Installazione di TensorFlow su Ubuntu | TensorFlow
Le alternative sono Virtualenv, e docker e forse "pip".
Per iniziare, Anaconda ha lavorato mano nella mano con pip, e easy_install - tutte queste applicazioni forniscono un ambiente localizzato per installare applicazioni python nella directory dove si trova "pip".
In passato, l'installazione di qualsiasi cosa richiedeva sempre root - ma ora stiamo cercando di farne a meno.
Se si usa solo "pip", che installa nella propria directory /.local:
ma a volte questo non è possibile: perché diverse applicazioni richiedono diverse versioni di python, o diverse versioni di librerie - anche se il python è lo stesso alla 2.7.
Quindi pip non può risolvere questo problema: Anaconda entra in scena.
Utilizzando il comando "conda create" (+ source activate + source deactivate), è possibile creare diversi ambienti sotto la directory /anaconda3/envs (assumendo che abbiamo installato la versione 3.6 di Python di Anaconda) - e mettere tutte le diverse versioni di pip + python e librerie sotto diverse directory.
Così, per esempio, potete installare Tensorflow 1.0, 1.1, 2.0 ecc. sotto diverse directory sotto /anaconda3/envs.
A seconda dell'ambiente che selezionate con il comando "source activate", avrete diverse configurazioni di directory nella vostra :
Sopra è perché viene rilasciato "source activate tensorflow36". E così successivamente tutte le installazioni "pip install" andranno in questa prima directory.
Una parte confusa è solo essere consapevoli che "l'installazione di default di Anaconda", dove non avete emesso alcun "conda create" per creare un ambiente aggiuntivo - è un ambiente indipendente da solo - e così tutti i comandi "pip install" andranno nella directory /anaconda3/bin. (Quindi se avete seguito questo:
Installazione di TensorFlow su Ubuntu | TensorFlow
Ma non avete seguito l'istruzione "conda create", allora "pip install tensorflow" andrà nella vostra directory /anaconda3/bin).
Una volta superata la confusione, Anaconda è semplicemente fantastico - a mio parere meglio di virtualenv. La maggior parte dell'installazione viene fatta senza root.
Ho bisogno di questi diversi ambienti per molte ragioni: python2.7 e python3 sono semplicemente incompatibili, e molti esempi su internet funzionano solo per le vecchie versioni delle librerie python (Tensorflow in particolare).
Buoni riferimenti:
Crea ambienti virtuali per python con conda
Conda sostituisce la necessità di virtualenv?
Alternative a virtualenvs? - r/Python
Articoli simili
- Perché non posso eseguire Python in CMD, ma posso nel Prompt di Anaconda?
- Qual è il confronto tra conda vs pip vs anaconda?
- È consigliabile imparare Tkinter in Python per avanzare la propria carriera o per ottenere una migliore offerta di lavoro come sviluppatore Python?
- Come eseguire uno script Python senza installare Python